GraphQL Middlewares
Casbin следует официально рекомендованному способу предоставления авторизации для конечных точек GraphQL, имея единственный источник истины для авторизации: https://graphql.org/learn/authorization/. Другими словами, Casbin должен быть размещен между слоем GraphQL и вашей бизнес-логикой.
// 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);
}
}
}
});
Поддерживаемые промежуточные обработчики GraphQL
Ниже представлен полный список промежуточных обработчиков GraphQL Casbin. Любые вклады от третьих сторон в новый промежуточный обработчик GraphQL приветствуются. Пожалуйста, сообщите нам, и мы добавим его в этот список:)
- Go
- Node.js
- Python
Промежуточное ПО | Реализация GraphQL | Автор | Описание |
---|---|---|---|
graphql-authz | graphql | Casbin | Промежуточное ПО авторизации для graphql-go |
graphql-casbin | graphql | @esmaeilpour | Реализация использования Graphql и Casbin вместе |
gqlgen_casbin_RBAC_example | gqlgen | @WenyXu | (пусто) |
Промежуточное ПО | Реализация GraphQL | Автор | Описание |
---|---|---|---|
graphql-authz | GraphQL.js | Casbin | Промежуточное ПО авторизации Casbin для GraphQL.js |
Промежуточное ПО | Реализация GraphQL | Автор | Описание |
---|---|---|---|
graphql-authz | GraphQL-core 3 | @Checho3388 | Промежуточное ПО авторизации Casbin для GraphQL-core 3 |