Metadata-Version: 2.1
Name: casbin-pony-adapter
Version: 1.0.1
Summary: Pony ORM Adapter for PyCasbin
Home-page: https://github.com/drorvinkler/pycasbin-pony-adapter
Author: Dror A. Vinkler
License: MIT
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.7
Description-Content-Type: text/markdown
Requires-Dist: pony
Requires-Dist: casbin

# Pony ORM Adapter for PyCasbin
[![Build Status](https://travis-ci.com/drorvinkler/pycasbin-pony-adapter.svg?branch=main)](https://travis-ci.com/drorvinkler/pycasbin-pony-adapter)
[![codecov](https://codecov.io/gh/drorvinkler/pycasbin-pony-adapter/branch/main/graph/badge.svg)](https://codecov.io/gh/drorvinkler/pycasbin-pony-adapter)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

SQLAlchemy Adapter is the [Pony ORM](https://www.ponyorm.org) adapter for [PyCasbin](https://github.com/casbin/pycasbin). With this library, Casbin can load a policy from Pony ORM supported databases or save a policy to it.

Based on [Officially Supported Databases](http://www.ponyorm.org/), The current supported databases are:
- PostgreSQL
- MySQL
- SQLite
- Oracle
- CockroachDB

## Installation

```
pip install casbin_pony_adapter
```

## Simple Example

```python
import casbin_pony_adapter
import casbin
from pony.orm import Database

adapter = casbin_pony_adapter.Adapter(Database('sqlite', ':memory:'))

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

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

- [PyCasbin](https://github.com/casbin/pycasbin)

### License

This project is licensed under the [MIT license](LICENSE).


