Yii-Casbin:在 Yii 里使用 Casbin,支持 ACL、RBAC多种模型的权限管理框架
PHP-Casbin 是一个用 PHP 语言打造的轻量级开源访问控制框架( https://github.com/php-casbin... ),目前在 GitHub 开源。PHP-Casbin 采用了元模型的设计思想,支持多种经典的访问控制方案,如基于角色的访问控制 RBAC、基于属性的访问控制 ABAC 等。
Yii-Casbin 是一个专为Yii 2.0定制的Casbin
的扩展包( https://github.com/php-casbin... )。
安装
通过composer安装
在Yii 2.0
项目里,通过composer安装这个扩展:
composer require casbin/yii-adapter
配置
使用此扩展时,需要在你的应用程序配置中配置 Casbin
类:
return [ //.... 'components' => [ 'casbin' => [ 'class' => '\CasbinAdapter\Yii\Casbin', /* * Yii-casbin model setting. */ 'model' => [ // Available Settings: "file", "text" 'config_type' => 'file', 'config_file_path' => '/path/to/casbin-model.conf', 'config_text' => '', ], // Yii-casbin adapter . 'adapter' => '\CasbinAdapter\Yii\Adapter', /* * Yii-casbin database setting. */ 'database' => [ // Database connection for following tables. 'connection' => '', // CasbinRule tables and model. 'casbin_rules_table' => '{{%casbin_rule}}', ], ], ] ];
用法
通过Casbin
组件对Casbin的基本访问:
$casbin = \Yii::$app->casbin; $sub = 'alice'; // the user that wants to access a resource. $obj = 'data1'; // the resource that is going to be accessed. $act = 'read'; // the operation that the user performs on the resource. if (true === $casbin->enforce($sub, $obj, $act)) { // permit alice to read data1 } else { // deny the request, show an error }
自定义models规则
Casbin
支持多种models规则:
Casbin
Casbin官方网站:https://casbin.org
相关推荐
WasteLand 2020-10-18
Allinputs 2020-08-30
Ashes 2020-06-14
caiyiii 2020-06-14
kxguan 2020-06-14
daillo 2020-06-14
一粒沙里的世界 2020-06-14
ruxingli 2020-06-14
csssy00 2020-06-14
阿佐 2020-06-14
NameWFY 2020-05-28
NameWFY 2020-05-26
Robin罗兵 2020-05-16
caiyiii 2020-04-29
wmsjlihuan 2020-04-26
cbao 2020-04-26
csssy00 2020-04-19
igogo00 2020-03-09