casbin-basic-adapter
v1.1.0
Published
A basic adapter supports pg, sqlite3, mysql, mysql2, oracledb and mssql
Downloads
1,025
Readme
Basic Adapter
Basic Adapter is a basic driver adapter for Node-Casbin
which supports pg
, sqlite3
, mysql
, mysql2
, and mssql
. With this library, Node-Casbin
can load policy from or save policy to supported persistence systems.
Drives
We currently support the following SQL systems:
- [x] pg
- [x] mysql
- [x] mysql2
- [x] sqlite3
- [ ] oracledb
- [x] mssql
Installation
npm i casbin-basic-adapter
Simple Example
import { newEnforcer } from 'casbin';
import { Client } from 'pg';
import { BasicAdapter } from 'casbin-basic-adapter';
async function myFunction() {
// Initialize a Basic adapter and use it in a Node-Casbin enforcer:
// The adapter can not automatically create database.
// But the adapter will automatically and use the table named "casbin_rule".
const a = await BasicAdapter.newAdapter('pg',
new Client({
user: 'postgres',
database: 'postgres',
password: 'postgres',
}));
const e = await newEnforcer('examples/rbac_model.conf', a);
// Check the permission.
e.enforce('alice', 'data1', 'read');
// Modify the policy.
// await e.addPolicy(...);
// await e.removePolicy(...);
// Save the policy back to DB.
await e.savePolicy();
Getting Help
License
This project is under Apache 2.0 License. See the LICENSE file for the full license text.