diesel-adapter 0.4.0

Diesel adapter for casbin-rs
Documentation

diesel-adapter

Crates.io Docs Build Status

An adapter designed to work with casbin-rs.

Install

Add it to Cargo.toml

casbin = { version = "0.4.0" }
diesel-adapter = { version = "0.4.0", features = ["postgres"] }
async-std = "1.5.0"

Example

use casbin::prelude::*;
use diesel_adapter::{DieselAdapter, ConnOptions};

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

    let mut conn_opts = ConnOptions::default();
    conn_opts
        .set_hostname("127.0.0.1")
        .set_port(5432)
        .set_host("127.0.0.1:5433") // overwrite hostname, port config
        .set_database("casbin")
        .set_auth("casbin_rs", "casbin_rs");

    let a = Box::new(DieselAdapter::new(conn_opts)?);
    let mut e = Enforcer::new(m, a).await?;
    Ok(())
}

Features

  • 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.