ホームページ  >  記事  >  バックエンド開発  >  PHP-Casbin に基づく ABAC 権限制御

PHP-Casbin に基づく ABAC 権限制御

藏色散人
藏色散人転載
2019-09-16 11:20:354189ブラウズ

PHP-Casbin は、さまざまなアクセス制御モデル (RBAC ABAC ACL) に基づいた権限管理をサポートする、強力かつ効率的なオープンソースのアクセス制御フレームワークです。

ABAC は属性ベースのアクセス制御であり、文字列自体の代わりにサブジェクト、オブジェクト、またはアクションの属性を使用してアクセスを制御できます。

推奨: "PHP チュートリアル "

ABAC の公式の例は次のとおりです:

[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

これは r の定義です。 .obj クラス:

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

次に、ディサイダーを使用して決定を行います:

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

以上がPHP-Casbin に基づく ABAC 権限制御の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はlearnku.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。