Casbin角色监视器,用于监视PyCasbin策略的更新
项目描述
postgresql-watcher
基于PostgreSQL的Casbin监视器,用于监视Casbin策略的更新。
安装
pip install casbin-postgresql-watcher
基本用法示例
from flask_authz import CasbinEnforcer
from postgresql_watcher import PostgresqlWatcher
from flask import Flask
from casbin.persist.adapters import FileAdapter
casbin_enforcer = CasbinEnforcer(app, adapter)
watcher = PostgresqlWatcher(host=HOST, port=PORT, user=USER, password=PASSWORD, dbname=DBNAME)
watcher.set_update_callback(casbin_enforcer.load_policy)
casbin_enforcer.set_watcher(watcher)
# Call should_reload before every call of enforce to make sure
# the policy is update to date
watcher.should_reload()
if casbin_enforcer.enforce("alice", "data1", "read"):
# permit alice to read data1
pass
else:
# deny the request, show an error
pass
如果需要更多控制
from flask_authz import CasbinEnforcer
from postgresql_watcher import PostgresqlWatcher
from flask import Flask
from casbin.persist.adapters import FileAdapter
casbin_enforcer = CasbinEnforcer(app, adapter)
watcher = PostgresqlWatcher(host=HOST, port=PORT, user=USER, password=PASSWORD, dbname=DBNAME)
casbin_enforcer.set_watcher(watcher)
# Call should_reload before every call of enforce to make sure
# the policy is update to date
if watcher.should_reload():
casbin_enforcer.load_policy()
if casbin_enforcer.enforce("alice", "data1", "read"):
# permit alice to read data1
pass
else:
# deny the request, show an error
pass
启用SSL的基本用法示例
有关SSL参数的完整详细信息,请参阅PostgreSQL文档。
...
watcher = PostgresqlWatcher(host=HOST, port=PORT, user=USER, password=PASSWORD, dbname=DBNAME, sslmode="verify_full", sslcert=SSLCERT, sslrootcert=SSLROOTCERT, sslkey=SSLKEY)
...
项目详情
下载文件
下载适用于您的平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源分发
casbin_postgresql_watcher-1.1.1.tar.gz (10.4 kB 查看哈希)
构建分发
关闭
casbin_postgresql_watcher-1.1.1.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 491bf362c5311da80ce701806e9473b1d50b6e701150b494ff15fcf7db4d15f2 |
|
MD5 | b540854c9f6dee9d9aa49659051f9fb9 |
|
BLAKE2b-256 | ce37402bb8f698608a0309fe7b26dba3f4b9d562707e626b886e70f070070c61 |
关闭
casbin_postgresql_watcher-1.1.1-py2.py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | e483b1d635d92966e52cb78893731ccd11c51aaa8426f077fc65ac2ec0a94397 |
|
MD5 | 424d4162acfd468af6b3fb6298c50079 |
|
BLAKE2b-256 | 2ef30890752f17457adbb81cafbbeb89f2cb7ac614ae95081c43944a0a8395c3 |