跳转至主要内容

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中间件的贡献。 请通知我们,我们会将其添加到此列表中:)

中间件GraphQL实现作者描述
graphql-authzgraphqlCasbin用于graphql-go的授权中间件
graphql-casbingraphql@esmaeilpourGraphql和Casbin一起使用的实现
gqlgen_casbin_RBAC_examplegqlgen@WenyXu(空)