nsnake / casbin-adapter-redis-adapter
Casbin的Redis适配器
v1.0
2021-04-12 02:59 UTC
Requires
- php: ^7.2
This package is auto-updated.
Last update: 2024-09-22 07:22:50 UTC
README
Casbin的Redis适配器
#composer
composer require nsnake/casbin-adapter-redis-adapter
使用方法
<?php use CasbinAdapter\Redis\Adapter AS RedisAdapter; $redis_handle = new Redis(...); $a = new RedisAdapter(redis_handle,$your_redis_key_name); $enforcer = new Enforcer("model.conf", $a); $enforcer->addRule() $enforcer->addRole() ... #save $enforcer->savePolicy(); #load $enforcer->loadPolicy();
注意
PHP redis扩展支持RedisCluster和Predis
CasbinAdapter-Redis-Adapter仅支持savePolicy和loadPolicy函数。
##############################################################################
基于redis的Casbin快速存取
#composer安装
composer require nsnake/casbin-adapter-redis-adapter
使用方法
<?php use CasbinAdapter\Redis\Adapter AS RedisAdapter; $redis_handle = new Redis(...); $a = new RedisAdapter(redis_handle,$your_redis_key_name); $enforcer = new Enforcer("model.conf", $a); $enforcer->addRule() $enforcer->addRole() ... #保存规则 $enforcer->savePolicy(); #读取规则 $enforcer->loadPolicy();
注意
RedisAdapter为了方便在不同环境或框架下运行,因此采用依赖注入的方式,即模块本身不参与redis的连接过程,使用时只需传入redis的句柄即可(例如在tp5.1下可以使用Cache::handler方式获取)。目前支持的php扩展为Redis,RedisCluster和Predis,基于常用场景和执行效率的原因。RedisAdapter不支持自动保存和对单独的policy进行添加或编辑操作,即和自带的文件存储一样都是整存整取。