GraphQL Middlewares
Casbin folgt dem offiziell vorgeschlagenen Weg, die Autorisierung für GraphQL-Endpunkte bereitzustellen, indem es eine einzige Wahrheitsquelle für die Autorisierung hat: https://graphql.org/learn/authorization/. Mit anderen Worten, Casbin sollte zwischen der GraphQL-Schicht und Ihrer Geschäftslogik platziert werden.
// 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);
}
}
}
});
Unterstützte GraphQL-Middlewares
Eine vollständige Liste der Casbin GraphQL-Middlewares finden Sie unten. Jeder Beitrag von Dritten zu einer neuen GraphQL-Middleware ist willkommen. Bitte informieren Sie uns und wir werden es zu dieser Liste hinzufügen:)
- Go
- Node.js
- Python
Middleware | GraphQL-Implementierung | Autor | Beschreibung |
---|---|---|---|
graphql-authz | graphql | Casbin | Eine Autorisierungs-Middleware für graphql-go |
graphql-casbin | graphql | @esmaeilpour | Eine Implementierung der gemeinsamen Nutzung von Graphql und Casbin |
gqlgen_casbin_RBAC_example | gqlgen | @WenyXu | (leer) |
Middleware | GraphQL-Implementierung | Autor | Beschreibung |
---|---|---|---|
graphql-authz | GraphQL.js | Casbin | Eine Casbin-Autorisierungsmiddleware für GraphQL.js |
Middleware | GraphQL-Implementierung | Autor | Beschreibung |
---|---|---|---|
graphql-authz | GraphQL-core 3 | @Checho3388 | Eine Casbin-Autorisierungsmiddleware für GraphQL-core 3 |