专为 ThinkPHP 打造的轻量级访问控制库 Think-Casbin

Apache-2.0
PHP
跨平台
2018-12-03
TechLee

PHP-Casbin 是一个用 PHP 语言打造的轻量级开源访问控制框架( https://github.com/php-casbin... ),目前在 GitHub 开源。PHP-Casbin 采用了元模型的设计思想,支持多种经典的访问控制方案,如基于角色的访问控制 RBAC、基于属性的访问控制 ABAC 等。

Think-Casbin一个专为ThinkPHP5.1定制的Casbin的扩展包( https://github.com/php-casbin... )。

安装

在你的thinkphp项目里,通过composer安装这个扩展

composer require casbin/think-adapter

发布资源:

php think casbin:publish

这将自动创建model配置文件config/casbin-basic-model.conf,和Casbin的配置文件config/casbin.php

数据迁移:

执行前,请确保数据库连接信息配置正确,如需修改数据库连接信息或表名,可以修改config/casbin.php里的配置

php think casbin:migrate

这将会自动创建Casbin的策略表casbin_rule

用法

use 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
    echo 'permit alice to read data1';
} else {
    // deny the request, show an error
}

自定义配置

config/casbin-basic-model.conf为Casbin的model文件

config/casbin.php为Casbin的adapter、db配置信息

关于Casbin

Casbin官网文档 (https://casbin.org )查看更多用法。

的码云指数为
超过 的项目
加载中

评论(0)

暂无评论

暂无资讯

暂无问答

SQLSTATE[HY000] [2002] 错误

SQLSTATE[HY000] [2002] 错误

2018/05/21 17:25
17
0
thinkphp执行流程

thinkphp执行流程 1. 入口文件index.php 用户对url的访问首先被定位到http:////index.php, 这里的入口文件index.php做三件事情:1.1 1.2 1.3 1.1 定义或载入全局变量 常见的有APP_NAME(项目名...

2014/04/07 20:06
57
0
thinkPHP中{$Think }用法

thinkPHP中{$Think }用法 【系统变量输出】 普通的模板变量需要首先赋值后才能在模板中输出, 系统变量可以直接在模板中输出,通常以{$Think 打头 支持输出 $_SERVER、$_ENV、 $_POST、 $_GE...

2016/11/22 16:04
45
1
不合格的程序员

什么样的程序员才是一个合格的程序员? 。。。。。。 我有一个最简单的标准: Think。 只要你Think,我就承认你是一个合格的程序员。我不在乎你知道多少东西,我在乎的是你现在的能力。我在乎...

2011/11/06 14:22
36
0
PHP开发之THINKPHP多表联合查询操作的三中方法

THINKPHP 中关联查询(多表查询)可以使用 table() 方法或和join方法,请看示例: 联合查询 1、原生查询 $sql =$sql='select p.product_name,z.message as zmessage,z.rdtime,r.message,r.r...

2012/12/28 19:10
21.6K
3
这真真是极好的

这真真是极好的

2015/11/20 23:10
205
0
What you think --- From <Think and Grow Rich>

If you think you are beaten,you are. If you think you dare not, you don't If you like to win, but you think you can't,it is almost certain you won't If you think you'll lose,you...

2012/07/05 18:54
20
0
Model数据库

类拆分为Connection(连接器)/Query(查询器)/Builder(SQL生成器) 1.配置数据库连接信息 2.查询构造器 (1)基本查询 添加一条数据 $data = ['foo' => 'bar', 'bar' => 'foo']; Db::tabl...

2016/12/17 10:55
4
0
1、Mac系统下搭建thinkPHP框架环境

thinkPHP是一个简洁易用的PHP框架,在Window,Linux,Mac环境下均可使用,Window环境下安装很简单,基于Linux和Mac有权限问题,特写此文以记忆。

2014/03/09 18:20
8.2K
1

没有更多内容

加载失败,请刷新页面

返回顶部
顶部