跳转到主要内容

pycasbin的Redis watcher适配器

项目描述

pycasbin redis watcher

Casbin角色监视器,用于监视Casbin策略的更新

安装

pip install pycasbin-redis-watcher

基本用法

示例使用 https://github.com/ScienceLogic/pycasbin/flask-authz

from flask_authz import CasbinEnforcer
from casbin_redis_watcher import RedisWatcher
casbin_enforcer = CasbinEnforcer(app, adapter)
watcher=RedisWatcher(redis_hostname, redis_port)
watcher.set_update_callback(casbin_enforcer.e.load_policy)
casbin_enforcer.set_watcher(watcher)

与UWSGI一起使用

此redis-watcher模块启动单独的进程,这些进程订阅Redis通道,并监听该通道上的Casbin策略更新。当在WSGI上下文(如uwsgi)中运行时,您可能希望将这些进程作为postfork操作启动。如下所示

try:
    from uwsgidecorators import postfork
    print("Running in uwsgi context")
except ModuleNotFoundError:
    print("Not running in uwsgi context")
    postfork = None

if postfork:
    @postfork
    def load_watcher():
        global casbin_enforcer
        watcher = RedisWatcher(redis_info.hostname, redis_info.port)
        watcher.set_update_callback(casbin_enforcer.e.load_policy)
        casbin_enforcer.set_watcher(watcher)

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分发

本版本没有可用的源代码分发文件。请参阅生成分发存档教程

构建版本

pycasbin_redis_watcher-0.1.0-py3-none-any.whl (3.8 kB 查看哈希)

上传时间 Python 3

支持者