{"categories":[{"label":"Database","url":"https://skillfed.io/packages/category/database/4"}],"enrichment":{"capability":"Provides an asynchronous SQLAlchemy adapter for PyCasbin, enabling policy-based access control rules to be loaded from and persisted to databases like PostgreSQL, MySQL, SQLite, Oracle, and others.","skillfed_tags":["access-control","async-orm","policy-engine"],"use_cases":["Store RBAC (role-based access control) policies in PostgreSQL or MySQL for a web service, loading them at startup and updating them dynamically.","Implement soft-deleted audit trails of permission changes by marking policy records as deleted instead of removing them permanently.","Manage complex ABAC (attribute-based access control) rules in SQLite for a desktop or embedded application with async policy enforcement.","Integrate policy persistence into an existing Alembic migration workflow to version-control Casbin rule schema changes.","Use externally managed SQLAlchemy sessions to coordinate policy updates with other database transactions in a single atomic operation."],"what_it_does":"This package bridges PyCasbin's access-control enforcement engine with SQLAlchemy's async ORM, allowing you to store and retrieve authorization policies from a database instead of keeping them in memory or configuration files. It wraps SQLAlchemy's async session management to handle policy persistence transparently, supporting multiple database backends (PostgreSQL, MySQL, SQLite, Oracle, SQL Server, MariaDB, Firebird) through SQLAlchemy's driver ecosystem.\n\nYou define your access-control model in a Casbin configuration file, then use this adapter to load policies from a database table and save policy changes back to it. The adapter integrates with async/await workflows, making it suitable for async web frameworks and services. It also supports advanced features like soft deletion (marking records as deleted rather than removing them), external session management for transaction control, and Alembic migration integration for schema management.","worth_installing":"Yes. The package is actively maintained, has no known vulnerabilities, low install friction, and a permissive license. Install it if you need to persist Casbin policies in a database and are already using async SQLAlchemy; it is the standard adapter for that use case. Not necessary if you store policies in files or memory."},"id":"casbin-async-sqlalchemy-adapter","links":{"html":"https://skillfed.io/packages/casbin-async-sqlalchemy-adapter","md":"https://skillfed.io/packages/casbin-async-sqlalchemy-adapter.md","pypi":"https://pypi.org/project/casbin-async-sqlalchemy-adapter/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2025-12-10","license_spdx":null,"license_treatment":"permissive","name":"casbin-async-sqlalchemy-adapter","python_support":"supports_current","summary":"Asynchronous SQLAlchemy Adapter for PyCasbin"},"popularity":{"monthly_downloads":139864,"position":11286,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"1.17.0"}
