Awesome Open Source
Awesome Open Source

Sequelize Adapter

NPM version NPM download codebeat badge ci Coverage Status Gitter

Sequelize Adapter is the Sequelize adapter for Node-Casbin. With this library, Node-Casbin can load policy from Sequelize supported database or save policy to it.

Based on Officially Supported Databases, the current supported databases are:

  • PostgreSQL
  • MySQL
  • SQLite

You may find other 3rd-party supported DBs in Sequelize website or other places.


npm install casbin-sequelize-adapter --save

Simple Example

import casbin from 'casbin';
import { SequelizeAdapter } from 'casbin-sequelize-adapter';

async function myFunction() {
  // Initialize a Sequelize 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".
  // ORM should not create databases automatically.
  const a = await SequelizeAdapter.newAdapter({
    username: 'root',
    password: '',
    database: 'casbin',
    dialect: 'mysql',

  const e = await casbin.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


This project is under Apache 2.0 License. See the LICENSE file for the full license text.

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Typescript (263,054
Orm (2,110
Authorization (1,336
Sequelize (1,223
Auth (884
Adapter (610
Rbac (495
Acl (436
Access Control (398
Casbin (193
Abac (119
Authz (72
Node Casbin (8
Related Projects