Moyens GraphQL
Casbin suit la manière officiellement suggérée de fournir une autorisation pour les terminaux GraphQL en ayant une seule source de vérité pour l’autorisation : https://graphql.org/learn/authorization/ . En un autre mot, Casbin devrait être placé entre la couche GraphQL et votre logique commerciale.
// La logique d'autorisation Casbin vit dans postRepository
var postRepository = require('postRepository');
var postType = new GraphQLObjectType({
name: 'Post',
champs: {
body: {
type: GraphQLString,
résolve: (post, argus, contexte, { rootValue }) => {
return postRepository. etBody(context.user, post);
}
}
}
});
Moyens supportés GraphQL
Une liste complète des produits intermédiaires Casbin GraphQL est fournie ci-dessous. Toute contribution tierce sur un nouveau middleware GraphQL est la bienvenue, veuillez nous en informer et nous la mettrons dans cette liste:)
- Go
- Node.js
- Python
Middleware | Implémentation GraphQL | Auteur | Description |
---|---|---|---|
auth-graphql | graphql | Casbin | Un middleware d'autorisation pour graphql-go |
graphql-casbin | graphql | @esmaeilpour | Une implémentation de l'utilisation de Graphql et de Casbin ensemble |
format@@0 gqlgen_casbin_RBAC_example | Gqlgen | @WenyXu | (vide) |
Middleware | Implémentation GraphQL | Auteur | Description |
---|---|---|---|
auth-graphql | GraphQL.js | Casbin | Un middleware d'autorisation Casbin pour GraphQL.js |
Middleware | Implémentation GraphQL | Auteur | Description |
---|---|---|---|
auth-graphql | GraphQL-core 3 | @Checho3388 | Un middleware d'autorisation Casbin pour GraphQL-core 3 |