php权限管理-基于PHP-Casbin的ABAC权限控制

2023-08-23 0 8,589 百度已收录

PHP-Casbin是一个强大、高效的开源访问控制框架php权限管理,支持基于各种访问控制模型(RBAC ABAC ACL)的权限管理。

php权限管理-基于PHP-Casbin的ABAC权限控制

ABAC是一种基于属性的访问控制php权限管理,它可以使用主体、客体或动作的属性而不是字符串本身来控制访问。

php权限管理-基于PHP-Casbin的ABAC权限控制

ABAC官方实例如下:

php权限管理-基于PHP-Casbin的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

php权限管理-基于PHP-Casbin的ABAC权限控制

这是 r.obj 类的定义:

php权限管理-基于PHP-Casbin的ABAC权限控制

$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

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悟空资源网 php php权限管理-基于PHP-Casbin的ABAC权限控制 https://www.wkzy.net/game/144277.html

常见问题

相关文章

官方客服团队

为您解决烦忧 - 24小时在线 专业服务