All Projects → node-casbin → sequelize-adapter

node-casbin / sequelize-adapter

Licence: Apache-2.0 License
Sequelize adapter for Casbin

Programming Languages

typescript
32286 projects

Projects that are alternatives of or similar to sequelize-adapter

Gorm Adapter
Gorm adapter for Casbin
Stars: ✭ 373 (+631.37%)
Mutual labels:  adapter, orm, acl, auth, authorization, rbac, access-control, abac, casbin
dart-casbin
An authorization library that supports access control models like ACL, RBAC, ABAC in Dart/Flutter
Stars: ✭ 30 (-41.18%)
Mutual labels:  acl, auth, authorization, rbac, access-control, abac, authz, casbin
Casbin
An authorization library that supports access control models like ACL, RBAC, ABAC in Golang
Stars: ✭ 10,872 (+21217.65%)
Mutual labels:  acl, auth, authorization, rbac, access-control, abac, authz, casbin
lua-casbin
An authorization library that supports access control models like ACL, RBAC, ABAC in Lua (OpenResty)
Stars: ✭ 43 (-15.69%)
Mutual labels:  acl, auth, authorization, rbac, access-control, abac, authz, casbin
casbin-ex
An authorization library that supports access control models like ACL, RBAC, ABAC in Elixir
Stars: ✭ 37 (-27.45%)
Mutual labels:  acl, auth, authorization, rbac, access-control, abac, authz, casbin
Node Casbin
An authorization library that supports access control models like ACL, RBAC, ABAC in Node.js and Browser
Stars: ✭ 1,757 (+3345.1%)
Mutual labels:  acl, auth, authorization, rbac, access-control, abac, authz, casbin
Openstack Policy Editor
A Casbin Policy Editor for OpenStack
Stars: ✭ 28 (-45.1%)
Mutual labels:  acl, auth, authorization, rbac, access-control, abac, casbin
Pycasbin
An authorization library that supports access control models like ACL, RBAC, ABAC in Python
Stars: ✭ 625 (+1125.49%)
Mutual labels:  acl, auth, authorization, rbac, access-control, abac, casbin
Jcasbin
An authorization library that supports access control models like ACL, RBAC, ABAC in Java
Stars: ✭ 1,335 (+2517.65%)
Mutual labels:  acl, auth, authorization, rbac, access-control, abac, casbin
Casbin.net
An authorization library that supports access control models like ACL, RBAC, ABAC in .NET (C#)
Stars: ✭ 535 (+949.02%)
Mutual labels:  acl, auth, authorization, rbac, access-control, abac, casbin
sqlx-adapter
Asynchronous casbin adapter for mysql, postgres, sqlite based on sqlx-rs
Stars: ✭ 27 (-47.06%)
Mutual labels:  adapter, acl, auth, rbac, access-control, abac, casbin
Casbin Rs
An authorization library that supports access control models like ACL, RBAC, ABAC in Rust.
Stars: ✭ 375 (+635.29%)
Mutual labels:  acl, auth, authorization, rbac, access-control, abac, casbin
Casbin4D
An authorization library that supports access control models like ACL, RBAC, ABAC in Delphi
Stars: ✭ 25 (-50.98%)
Mutual labels:  acl, auth, authorization, rbac, access-control, abac, casbin
Chi Authz
chi-authz is an authorization middleware for Chi
Stars: ✭ 248 (+386.27%)
Mutual labels:  acl, authorization, rbac, access-control, abac, casbin
Php Casbin
An authorization library that supports access control models like ACL, RBAC, ABAC in PHP .
Stars: ✭ 865 (+1596.08%)
Mutual labels:  acl, auth, authorization, rbac, access-control, abac
objection-authorize
isomorphic, "magical" authorization integration with Objection.js 🎉
Stars: ✭ 71 (+39.22%)
Mutual labels:  acl, authorization, rbac, access-control, abac, authz
Negroni Authz
negroni-authz is an authorization middleware for Negroni
Stars: ✭ 152 (+198.04%)
Mutual labels:  acl, authorization, rbac, access-control, abac, casbin
Caddy Authz
Caddy-authz is a middleware for Caddy that blocks or allows requests based on access control policies.
Stars: ✭ 221 (+333.33%)
Mutual labels:  acl, authorization, rbac, access-control, abac, casbin
Casbin Cpp
An authorization library that supports access control models like ACL, RBAC, ABAC in C/C++
Stars: ✭ 113 (+121.57%)
Mutual labels:  acl, authorization, rbac, access-control, abac, casbin
Casbin Server
Casbin as a Service (CaaS)
Stars: ✭ 171 (+235.29%)
Mutual labels:  acl, authorization, rbac, access-control, abac, casbin

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

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

Installation

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

License

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

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].