All Projects → pycasbin → sqlalchemy-adapter

pycasbin / sqlalchemy-adapter

Licence: Apache-2.0 license
SQLAlchemy Adapter for PyCasbin

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to sqlalchemy-adapter

sqlx-adapter
Asynchronous casbin adapter for mysql, postgres, sqlite based on sqlx-rs
Stars: ✭ 27 (-49.06%)
Mutual labels:  acl, auth, permission, access-control, abac, casbin, casbin-adapter
Casbin.net
An authorization library that supports access control models like ACL, RBAC, ABAC in .NET (C#)
Stars: ✭ 535 (+909.43%)
Mutual labels:  acl, auth, permission, access-control, abac, casbin
Jcasbin
An authorization library that supports access control models like ACL, RBAC, ABAC in Java
Stars: ✭ 1,335 (+2418.87%)
Mutual labels:  acl, auth, permission, access-control, abac, casbin
Node Casbin
An authorization library that supports access control models like ACL, RBAC, ABAC in Node.js and Browser
Stars: ✭ 1,757 (+3215.09%)
Mutual labels:  acl, auth, permission, access-control, abac, casbin
casbin-ex
An authorization library that supports access control models like ACL, RBAC, ABAC in Elixir
Stars: ✭ 37 (-30.19%)
Mutual labels:  acl, auth, permission, access-control, abac, casbin
lua-casbin
An authorization library that supports access control models like ACL, RBAC, ABAC in Lua (OpenResty)
Stars: ✭ 43 (-18.87%)
Mutual labels:  acl, auth, permission, access-control, abac, casbin
Pycasbin
An authorization library that supports access control models like ACL, RBAC, ABAC in Python
Stars: ✭ 625 (+1079.25%)
Mutual labels:  acl, auth, permission, access-control, abac, casbin
Casbin
An authorization library that supports access control models like ACL, RBAC, ABAC in Golang
Stars: ✭ 10,872 (+20413.21%)
Mutual labels:  acl, auth, permission, access-control, abac, casbin
Casbin Rs
An authorization library that supports access control models like ACL, RBAC, ABAC in Rust.
Stars: ✭ 375 (+607.55%)
Mutual labels:  acl, auth, permission, access-control, abac, casbin
sequelize-adapter
Sequelize adapter for Casbin
Stars: ✭ 51 (-3.77%)
Mutual labels:  acl, auth, access-control, abac, casbin
Openstack Policy Editor
A Casbin Policy Editor for OpenStack
Stars: ✭ 28 (-47.17%)
Mutual labels:  acl, auth, access-control, abac, casbin
Gorm Adapter
Gorm adapter for Casbin
Stars: ✭ 373 (+603.77%)
Mutual labels:  acl, auth, access-control, abac, casbin
Casbin Cpp
An authorization library that supports access control models like ACL, RBAC, ABAC in C/C++
Stars: ✭ 113 (+113.21%)
Mutual labels:  acl, permission, access-control, abac, casbin
Casbin4D
An authorization library that supports access control models like ACL, RBAC, ABAC in Delphi
Stars: ✭ 25 (-52.83%)
Mutual labels:  acl, auth, access-control, abac, casbin
dart-casbin
An authorization library that supports access control models like ACL, RBAC, ABAC in Dart/Flutter
Stars: ✭ 30 (-43.4%)
Mutual labels:  acl, auth, access-control, abac, casbin
Think Casbin
专为ThinkPHP定制的Casbin的扩展包,Casbin是一个功能强大,高效的开源访问控制库。
Stars: ✭ 138 (+160.38%)
Mutual labels:  acl, permission, access-control, abac, casbin
Php Casbin
An authorization library that supports access control models like ACL, RBAC, ABAC in PHP .
Stars: ✭ 865 (+1532.08%)
Mutual labels:  acl, auth, permission, access-control, abac
actix-casbin-auth
Casbin Actix-web access control middleware
Stars: ✭ 40 (-24.53%)
Mutual labels:  acl, auth, permission, abac, casbin
Casbin Server
Casbin as a Service (CaaS)
Stars: ✭ 171 (+222.64%)
Mutual labels:  acl, access-control, abac, casbin
Vakt
Attribute-based access control (ABAC) SDK for Python
Stars: ✭ 92 (+73.58%)
Mutual labels:  acl, permission, access-control, abac

SQLAlchemy Adapter for PyCasbin

GitHub Actions Coverage Status Version PyPI - Wheel Pyversions Download License

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

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

  • PostgreSQL
  • MySQL
  • SQLite
  • Oracle
  • Microsoft SQL Server
  • Firebird
  • Sybase

Installation

pip install casbin_sqlalchemy_adapter

Simple Example

import casbin_sqlalchemy_adapter
import casbin

adapter = casbin_sqlalchemy_adapter.Adapter('sqlite:///test.db')

e = casbin.Enforcer('path/to/model.conf', adapter, True)

sub = "alice"  # the user that wants to access a resource.
obj = "data1"  # the resource that is going to be accessed.
act = "read"  # the operation that the user performs on the resource.

if e.enforce(sub, obj, act):
    # permit alice to read data1casbin_sqlalchemy_adapter
    pass
else:
    # deny the request, show an error
    pass

Getting Help

License

This project is licensed under the Apache 2.0 license.

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