#adapter #casbin #key-index #v0 #v5 #columns #named

casbin-arangors-adapter

casbin-rs的ArangoRs适配器

5个版本

0.2.3 2023年2月5日
0.2.2 2023年2月4日
0.2.1 2023年2月4日
0.2.0 2023年2月4日
0.1.0 2023年2月4日

#1067 in 数据结构

每月24次下载

Apache-2.0

27KB
639

Casbin-rs Arangors适配器

如何使用

要使这个crate工作,你需要创建一个名为casbin的集合。别忘了将唯一的键索引放在列ptype,,v0,,v1,,v2,,v3,,v4,,v5

代码示例

use casbin_arangors_adapter::ArangorsAdapter;

let conn = arangors::Connection::establish_jwt(
    constants::DB_ADDRESS.as_str(),
    constants::DB_USER.as_str(),
    constants::DB_PASSWORD.as_str(),
).await.unwrap();

let db = conn.db(constants::DB_NAME.as_str()).await.unwrap();


let adapter = ArangorsAdapter::new(db);
let mut e = Enforcer::new("./model.conf", adapter).await.unwrap();
e.add_policy(vec!["jack".to_owned(), "data4".to_owned(), "read".to_owned()]).await;

assert!(e.enforce(("jack", "data4", "read")).unwrap());
assert!(!e.enforce(("jack", "data4", "write")).unwrap());

免责声明

该crate没有100%测试,可能存在一些错误。请随时提交拉取请求以修复这些错误 😃。

代码肯定可以改进,但这不是主要目标。

大量的代码来自这个仓库: https://github.com/casbin-rs/diesel-adapter

依赖关系

~13–22MB
~316K SLoC