Bỏ qua đến nội dung chính

GraphQL Middlewares

Casbin tuân theo cách được đề xuất chính thức để cung cấp ủy quyền cho các điểm cuối GraphQL bằng cách có một nguồn sự thật duy nhất cho việc ủy quyền: https://graphql.org/learn/authorization/. Nói cách khác, Casbin nên được đặt giữa lớp GraphQL và logic kinh doanh của bạn.

// 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);
}
}
}
});

Các Middleware GraphQL được hỗ trợ

Danh sách đầy đủ các middleware GraphQL của Casbin được cung cấp dưới đây. Bất kỳ đóng góp của bên thứ ba về một middleware GraphQL mới đều được hoan nghênh. Xin vui lòng thông báo cho chúng tôi, và chúng tôi sẽ thêm nó vào danh sách này:)

MiddlewareTriển khai GraphQLTác giảMô tả
graphql-authzgraphqlCasbinMột middleware xác thực cho graphql-go
graphql-casbingraphql@esmaeilpourMột triển khai sử dụng Graphql và Casbin cùng nhau
gqlgen_casbin_RBAC_examplegqlgen@WenyXu(trống)