#sea-orm #casbin #adapter

sea-orm-adapter

Sea ORM adapter for casbin-rs

5 unstable releases

0.3.2 Jul 29, 2023
0.3.1 Mar 27, 2023
0.3.0 Mar 26, 2023
0.2.0 Feb 8, 2023
0.1.0 Jan 16, 2023

#584 in Database interfaces

MIT/Apache

33KB
813 lines

sea-orm-adapter

Crates.io version

Sea ORM Adapter is the Sea ORM adapter for Casbin-rs. With this library, Casbin can load policy from Sea ORM supported database or save policy to it with fully asynchronous support.

Based on Sea ORM, The current supported databases are:

Example

use casbin::{CoreApi, DefaultModel, Enforcer};
use sea_orm::Database;
use sea_orm_adapter::SeaOrmAdapter;

#[tokio::main]
async fn main() {
    let m = DefaultModel::from_file("examples/rbac_model.conf")
        .await
        .unwrap();

    let db = Database::connect("mysql://root:123456@localhost:3306/casbin")
        .await
        .unwrap();

    let a = SeaOrmAdapter::new(db).await.unwrap();
    let e = Enforcer::new(m, a).await.unwrap();
}

Dependencies

~12–32MB
~502K SLoC