Casbin

Casbin

  • Texte
  • API
  • Redakteur
  • IDE-Plugins
  • Single Sign-On (SSO)
  • Forum
  • Hilfe
  • Blog
  • Pricing
  • Contact Sales
  • Languages iconDeutsch
    • English
    • 中文
    • 한국어
    • Русский
    • Français
    • 日本語
    • Helfen Sie zu übersetzen
  • GitHub

›Modell

Die Grundlagen

  • Übersicht
  • Los geht's
  • So funktioniert es
  • Anleitungen

Modell

  • Unterstützte Modelle
  • Syntax für Modelle
  • Effektor
  • Funktion
  • RBAC
  • RBAC with Pattern
  • RBAC mit Domänen
  • Casbin RBAC v.s. RBAC96
  • ABAC
  • Prioritätsmodell
  • Super-Admin

Speicher

  • Modellspeicher
  • Richtlinien-Speicher
  • Richtlinien-Untermengenladen

Erweiterungen

  • Enforcers
  • Adapter
  • Beobachter
  • Dispatcher
  • Rollen-Manager
  • Middleware
  • GraphQL Middlewares
  • Cloud Native Middlewares

API

  • API-Übersicht
  • Management-API
  • RBAC API
  • RBAC mit Domains API
  • Rollen-Manager-API
  • Datenberechtigungen

Erweiterte Nutzung

  • Mehrfachfachen
  • Benchmarks
  • Leistungsoptimierung
  • Autorisierung von Kubernetes
  • Genehmigung des Service-Mesh durch den Gesandten

Management

  • Admin-Portal
  • Kasbin-Dienst
  • Log- & Fehlerbehandlung
  • Frontend-Nutzung

Redakteur

  • Online-Editor
  • IDE-Plugins

Mehr

  • Unsere Adopter
  • Mitwirken
  • Datenschutzerklärung
  • Nutzungsbedingungen
Translate

RBAC mit Domänen

Rollendefinition mit Domäneninstanzen

Die RBAC-Rollen in Casbin können global oder domänenspezifisch sein. Domain-spezifische Rollen bedeuten, dass die Rollen eines Benutzers unterschiedlich sein können, wenn der Benutzer sich in verschiedenen Domänen/Mietern befindet. Dies ist sehr nützlich für große Systeme wie eine Cloud, da die Benutzer in der Regel in verschiedenen Mietern sind.

Die Rollendefinition mit Domänen/Mietern sollte so etwas wie folgt sein:

[role_definition]
g = _, _, _

Der 3. _ bedeutet den Namen der Domain/Mieter, dieser Teil sollte nicht geändert werden. Dann kann die Politik lauten:

p, admin, tenant1, data1, lesen
p, admin, tenant2, data2, lesen

g, alice, admin, tenant1
g, alice, user, tenant2

Es bedeutet admin Rolle in tenant1 kann data1 lesen. Und Alice hat admin Rolle in Tenant1und hat Benutzer Rolle in Tenant2. So kann sie Daten 1 lesen. Da Alice jedoch kein Admin in Tenant2ist, kann sie data2 nicht lesen.

Dann solltest du in einem Matcher die Rolle wie unten überprüfen:

[matchers]
m = g(r.sub, p.sub, r.dom) && r.dom == p.dom && r.obj == p.obj && r.act == p.act

Beispiele finden Sie in der rbac_with_domains_model.conf.

← RBAC with PatternCasbin RBAC v.s. RBAC96 →
  • Rollendefinition mit Domäneninstanzen
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