>백엔드 개발 >PHP 튜토리얼 >PHP-Casbin 기반 ABAC 권한 제어

PHP-Casbin 기반 ABAC 권한 제어

藏色散人
藏色散人앞으로
2019-09-16 11:20:354329검색

PHP-Casbin 은 다양한 액세스 제어 모델(RBAC ABAC ACL)을 기반으로 권한 관리를 지원하는 강력하고 효율적인 오픈 소스 액세스 제어 프레임워크입니다.

ABAC는 문자열 자체가 아닌 주체, 객체, 액션의 속성을 이용해 접근을 제어할 수 있는 속성 기반 접근 제어입니다.

추천: "PHP Tutorial"

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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 learnku.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제