ABAC-Berechtigungskontrolle basierend auf PHP-Casbin

藏色散人
Freigeben: 2023-04-07 12:12:01
nach vorne
4228 Leute haben es durchsucht

PHP-Casbin ist ein leistungsstarkes und effizientes Open-Source-Zugriffskontroll-Framework, das die Berechtigungsverwaltung basierend auf verschiedenen Zugriffskontrollmodellen (RBAC ABAC ACL) unterstützt.

ABAC ist eine attributbasierte Zugriffskontrolle, die anstelle der Zeichenfolge selbst die Attribute des Subjekts, Objekts oder der Aktion zur Zugriffssteuerung verwenden kann.

Empfohlen: „PHP-Tutorial

Das offizielle Beispiel für ABAC lautet wie folgt:

[request_definition]
r = sub, obj, act
[policy_definition]
p = sub, obj, act
[policy_effect]
e = some(where (p.eft == allow))
[matchers]
m = r.sub == r.obj.owner
Nach dem Login kopieren

Dies ist die Definition von r. obj-Klasse:

$data1 = new \stdClass();
$data1->name = 'data1';
$data1->owner = 'alice';
$data2 = new \stdClass();
$data2->name = 'data2';
$data2->owner = 'bob';
Nach dem Login kopieren

Dann verwenden Sie den Entscheider, um die Entscheidung zu treffen:

$e->enforce('alice', $data1, 'read');  // true
$e->enforce('alice', $data2, 'read');  // false
$e->enforce('bob', $data1, 'read');  // false
$e->enforce('bob', $data2, 'read');  // true
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonABAC-Berechtigungskontrolle basierend auf PHP-Casbin. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:learnku.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage