An adapter designed to work with casbin-rs.
Add it to Cargo.toml
casbin = { version = "0.2.0" }
diesel_adapter = { version = "0.2.0", features = ["postgres"] }
async-std = "1.5.0"
```rust use casbin::{Enforcer, FileAdapter, Model}; use dieseladapter::{DieselAdapter, ConnOptions}; use asyncstd::task;
task::blockon(async { let mut m = Model::fromfile("examples/rbac_model.conf").await?;
let mut conn_opts = ConnOptions::default();
conn_opts
.set_hostname("127.0.0.1")
.set_port(3306)
.set_table("casbin_rules")
.set_auth("casbin_rs", "casbin_rs");
let a = Box::new(DieselAdapter::new(conn_opts).await?);
let mut e = Enforcer::new(m, a).await?;
}); ```
postgres
mysql
Attention: postgres
and mysql
are mutual exclusive which means that you can only activate one of them. Currently we don't have support for sqlite
, it may be added in the near future.