GraphQL Middlewares
Casbin mengikuti cara yang disarankan secara resmi untuk memberikan otorisasi pada endpoint GraphQL dengan memiliki satu sumber kebenaran untuk otorisasi: https://graphql.org/learn/authorization/. Dengan kata lain, Casbin harus ditempatkan di antara lapisan GraphQL dan logika bisnis Anda.
// Casbin authorization logic lives inside postRepository
var postRepository = require('postRepository');
var postType = new GraphQLObjectType({
name: 'Post',
fields: {
body: {
type: GraphQLString,
resolve: (post, args, context, { rootValue }) => {
return postRepository.getBody(context.user, post);
}
}
}
});
Middleware GraphQL yang Didukung
Daftar lengkap middleware GraphQL Casbin diberikan di bawah ini. Kontribusi pihak ketiga pada middleware GraphQL baru sangat diterima. Mohon beri tahu kami, dan kami akan menambahkannya ke dalam daftar ini:)
- Go
- Node.js
- Python
Middleware | Implementasi GraphQL | Penulis | Deskripsi |
---|---|---|---|
graphql-authz | graphql | Casbin | Middleware otorisasi untuk graphql-go |
graphql-casbin | graphql | @esmaeilpour | Implementasi penggunaan Graphql dan Casbin bersama-sama |
gqlgen_casbin_RBAC_example | gqlgen | @WenyXu | (kosong) |
Middleware | Implementasi GraphQL | Penulis | Deskripsi |
---|---|---|---|
graphql-authz | GraphQL.js | Casbin | Middleware otorisasi Casbin untuk GraphQL.js |
Middleware | Implementasi GraphQL | Penulis | Deskripsi |
---|---|---|---|
graphql-authz | GraphQL-core 3 | @Checho3388 | Middleware otorisasi Casbin untuk GraphQL-core 3 |