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 미들웨어에 대한 제3자의 기여는 환영입니다. 우리에게 알려주시면, 이 목록에 추가하겠습니다:)
- 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 인증 미들웨어 |