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ミドルウェア
Casbin GraphQLミドルウェアの完全なリストを以下に提供します。 新しい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 | GraphQL.js用のCasbin認証ミドルウェア |
ミドルウェア | GraphQLの実装 | 著者 | 説明 |
---|---|---|---|
graphql-authz | GraphQL-core 3 | @Checho3388 | GraphQL-core 3用のCasbin認証ミドルウェア |