Casbin

Casbin

  • Documents
  • API
  • Editeur
  • Plugins IDE
  • Authentification unique (SSO)
  • Forums
  • Aide
  • Blogue
  • Pricing
  • Contact Sales
  • Languages iconFrançais
    • English
    • 中文
    • 한국어
    • Русский
    • Deutsch
    • 日本語
    • Aider à traduire
  • GitHub

›API

Les Bases

  • Aperçu
  • Commencer
  • Comment ça marche
  • Tutoriels

Modélisation

  • Modèles pris en charge
  • Syntaxe pour les modèles
  • Effet
  • Fonction
  • RBAC
  • RBAC avec motif
  • RBAC avec domaines
  • Casbin RBAC v.s. RBAC96
  • ABAC
  • Modèle de priorité
  • Super Admin

Stockage

  • Stockage du modèle
  • Stockage de la politique
  • Chargement du sous-ensemble de la politique

Extensions

  • Enforcers
  • Adaptateurs
  • Observateurs
  • Répartiteurs
  • Responsables des rôles
  • Moyens
  • Moyens GraphQL
  • Moyens natifs du Cloud

API

  • Aperçu de l'API
  • API de gestion
  • RBAC API
  • RBAC avec API Domains
  • API RoleManager
  • Autorisations des données

Utilisation avancée

  • Multi-threads
  • Benchmarks
  • Optimisation des performances
  • Autorisation de Kubernetes
  • Autorisation de maillage de service par l'envoyé

Gestion

  • Portail Admin
  • Service Casbin
  • Gestion des logs et des erreurs
  • Utilisation du frontend

Editeur

  • Éditeur en ligne
  • Plugins IDE

En savoir plus

  • Nos Adopteurs
  • Contribuer
  • Politique de confidentialité
  • Conditions d'utilisation
Translate

RBAC avec API Domains

Une API plus conviviale pour RBAC avec les domaines. Cette API est un sous-ensemble de Management API. Les utilisateurs de RBAC peuvent utiliser cette API pour simplifier le code.

Référence

la variable globale e est l'instance Enforcer .

Go
Node.js
PHP
Python
.NET
Rust
Java
e, err := NewEnforcer("examples/rbac_with_domains_model.conf", "examples/rbac_with_domains_policy.csv")
const e = await newEnforcer('examples/rbac_with_domains_model.conf', 'examples/rbac_with_domains_policy.csv')
$e = new Enforcer('examples/rbac_with_domains_model.conf', 'examples/rbac_with_domains_policy.csv');
e = casbin.Enforcer("examples/rbac_with_domains_model.conf", "examples/rbac_with_domains_policy.csv")
var e = new Enforcer("examples/rbac_with_domains_model.conf", "examples/rbac_with_domains_policy.csv");
let mut e = Enforcer::new("examples/rbac_with_domains_model.conf", "examples/rbac_with_domains_policy.csv").await?;
Enforcer e = new Enforcer("examples/rbac_with_domains_model.conf", "examples/rbac_with_domains_policy.csv");

GetUsersForRoleInDomain()

GetUsersForRoleInDomain récupère les utilisateurs qui ont un rôle dans un domaine.

Par exemple :

Go
Node.js
Python
res := e.GetUsersForRoleInDomain("admin", "domain1")
const res = e.getUsersForRoleInDomain("admin", "domain1")
res = e.get_users_for_role_in_domain("admin", "domain1")

Obtenir des Rôles pour les utilisateurs dans le domaine ()

GetRolesForUserInDomain récupère les rôles qu'un utilisateur a dans un domaine.

Par exemple :

Go
Node.js
Python
Java
res := e.GetRolesForUserInDomain("admin", "domain1")
const res = e.getRolesForUserInDomain("alice", "domain1")
res = e.get_roles_for_user_in_domain("alice", "domain1")
List<String> res = e.getRolesForUserInDomain("admin", "domain1");

Obtenir les permissions pour les utilisateurs dans le domaine ()

GetPermissionsForUserInDomain récupère les permissions pour un utilisateur ou un rôle dans un domaine.

Par exemple :

Go
Java
res := e.GetPermissionsForUserInDomain("alice", "domain1")
List<List<String>> res = e.getPermissionsForUserInDomain("alice", "domain1");

Ajouter un rôle à un utilisateur dans le domaine ()

AddRoleForUserInDomain ajoute un rôle pour un utilisateur dans un domaine. Renvoie false si l'utilisateur a déjà le rôle (aka non affecté).

Par exemple :

Go
Python
Java
ok, err := e.AddRoleForUserInDomain("alice", "admin", "domain1")
ok = e.add_role_for_user_in_domain("alice", "admin", "domain1")
boolean ok = e.addRoleForUserInDomain("alice", "admin", "domain1");

Supprimer le rôle de l'utilisateur dans le domaine ()

Supprimer rôleForUserInDomain supprime un rôle pour un utilisateur dans un domaine. Renvoie false si l'utilisateur n'a pas le rôle (aka non affecté).

Par exemple :

Go
Java
ok, err := e.DeleteRoleForUserInDomain("alice", "admin", "domain1")
boolean ok = e.deleteRoleForUserInDomain("alice", "admin", "domain1");

Supprimer les rôles des utilisateurs dans le domaine ()

Supprimer les RolesForUserInDomain supprime tous les rôles pour un utilisateur dans un domaine. Renvoie false si l'utilisateur n'a aucun rôle (aka non affecté).

Par exemple :

Go
ok, err := e.DeleteRolesForUserInDomain("alice", "domain1")

GetAllUsersByDomain()

GetAllUsersByDomain obtiendrait tous les utilisateurs associés au domaine. Retourne un tableau de chaîne vide si aucun domaine n'est défini dans le modèle.

Par exemple :

Go
res := e.GetAllUsersByDomain("domain1")

Supprimer tous les utilisateurs par domaine()

DeleteAllUsersByDomain supprimera tous les utilisateurs associés au domaine. Renvoie false si aucun domaine n'est défini dans le modèle.

Par exemple :

Go
ok, err := e.DeleteAllUsersByDomain("domain1")

Supprimer les domaines()

DeleteDomains supprimera tous les utilisateurs et rôles associés. Cela supprimera tous les domaines si le paramètre n'est pas fourni.

Par exemple :

Go
ok, err := e.DeleteDomains("domain1", "domain2")

GetAllDomains()

GetAllDomains would get all domains.

For example:

Go
res, _ := e.GetAllDomains()
note

If you are handling a domain like name::domain, it may lead to unexpected behavior. In Casbin, :: is a reversed keyword, just like for, if in a programming language, we should never put :: in a domain.

← RBAC APIAPI RoleManager →
  • Référence
    • GetUsersForRoleInDomain()
    • Obtenir des Rôles pour les utilisateurs dans le domaine ()
    • Obtenir les permissions pour les utilisateurs dans le domaine ()
    • Ajouter un rôle à un utilisateur dans le domaine ()
    • Supprimer le rôle de l'utilisateur dans le domaine ()
    • Supprimer les rôles des utilisateurs dans le domaine ()
    • GetAllUsersByDomain()
    • Supprimer tous les utilisateurs par domaine()
    • Supprimer les domaines()
    • GetAllDomains()
Casbin
Docs
Getting StartedManagement APIRBAC APIMiddlewares
Community
Who's using Casbin?Stack Overflow
Casbin          jCasbin
Node-Casbin   PHP-CasbinPyCasbin          Casbin.NETCasbin-CPP        Casbin-RS
Follow @casbinHQ
Copyright © 2022 Casbin Organization