1 stable release

1.1.0 Dec 28, 2024

#9 in #casbin

Download history 110/week @ 2024-12-27 4/week @ 2025-01-03 1/week @ 2025-01-10 1/week @ 2025-01-17

116 downloads per month

Apache-2.0

18KB
249 lines

string-adapter

Crates.io Docs CI codecov

String Adapter is a String adapter for casbin-rs. With this library, Casbin can load policy from String.

Install

Add the following to Cargo.toml:

string-adapter = { version = "1.1.0", default-features = false, features = ["runtime-tokio"]}
tokio = { version = "1.42.0", features = ["macros"] }

Example

use casbin::{CoreApi, DefaultModel, Enforcer, Result};
use string_adapter::StringAdapter;

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

    let a = StringAdapter::new(
        r#"
        p, alice, data1, read
        p, bob, data2, write
        p, data2_admin, data2, read
        p, data2_admin, data2, write
        g, alice, data2_admin
        "#,
    );

    let e = Enforcer::new(m, a).await?;

    Ok(())
}

Features

  • runtime-async-std: Use async-std as the runtime.
  • runtime-tokio: Use tokio as the runtime (default).

Dependencies

~10–24MB
~359K SLoC