GraphQL Middlewares
Casbin, yetkilendirme için resmi olarak önerilen yöntemi takip ederek GraphQL uç noktaları için yetkilendirme sağlar: https://graphql.org/learn/authorization/. Başka bir deyişle, Casbin, GraphQL katmanı ile iş mantığınız arasına yerleştirilmelidir.
// 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);
}
}
}
});
Desteklenen GraphQL Ara Katmanlar
Casbin GraphQL ara katmanlarının tam listesi aşağıda sunulmaktadır. Yeni bir GraphQL ara katmanı üzerine herhangi bir üçüncü taraf katkısına açıkız. Lütfen bize bildirin, ve biz de bunu bu listeye ekleyeceğiz:)
- Go
- Node.js
- Python
Ara Katman | GraphQL Uygulaması | Yazar | Açıklama |
---|---|---|---|
graphql-authz | graphql | Casbin | graphql-go için bir yetkilendirme ara katman yazılımı |
graphql-casbin | graphql | @esmaeilpour | Graphql ve Casbin'i birlikte kullanmanın bir uygulaması |
gqlgen_casbin_RBAC_example | gqlgen | @WenyXu | (boş) |
Ara Katman (Middleware) | GraphQL Uygulama | Yazar | Açıklama |
---|---|---|---|
graphql-authz | GraphQL.js | Casbin | GraphQL.js için bir Casbin yetkilendirme ara katmanı |
Ara Katman | GraphQL Uygulaması | Yazar | Açıklama |
---|---|---|---|
graphql-authz | GraphQL-core 3 | @Checho3388 | GraphQL-core 3 için bir Casbin yetkilendirme ara katmanı |