An RDBMS solution for Yosai, featuring a flat RBAC data model
Project description
# Yosai AlchemyStore
This is an extension project for [Yosai](http://www.github.com/yosaiproject/yosai) that features a complete AccountStore data store solution intended for quick-start projects using Yosai.
An AccountStore is a data access object (DAO) that provides an interface to a datastore, in this case a relational database. YosaiAlchemyStore is named as such to indicate its use of the [SQLAlchemy](http://www.sqlalchemy.org) library to enable all RDBMS connectivity.
# Installation
- Install YosaiAlchemyStore from PyPI using pip:
pip install yosai_alchemystore
## Setup
An AlchemyAccountStore can be configured through one of two ways:
- Option 1: YAML Config File
Define a system environment variable, YOSAI_ALCHEMYSTORE_SETTINGS, that points to the location of alchemystore_settings.yaml file and ensure that the file permissions make it readable.
Instantiate an AlchemyAccountStore without arguments.
- Option 2: Passing a dburl argument
instantiate an AlchemyAccountStore, passing a “dburl” argument as defined by SQLAlchemy: http://docs.sqlalchemy.org/en/latest/core/engines.html#database-urls
## API
The AccountStore API consists of two abstract base classes within the yosai.core.account.abcs module. It’s a simple API, consisting of a request method to obtain Account credentials (passwords) and a request method to obtain Account authorization information (roles and permissions).
## Data Models
Following is the database schema used to facilitate a simple, “flat” Role Based Access Control (RBAC) authorization policy. This data model enables the most basic form of RBAC. ![](/doc/db_schema.png)
## Dev Status: as of v0.0.5
The project has been released after being tested as part of yosai integrated testing. Unit tests are pending development.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for yosai_alchemystore-0.3.0.post1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3adc9f96880fba5d9cf28d27e981ea70ff0cfa42c267afa424d1280627d29ced |
|
MD5 | f329ba43b9162cab3b4a534c5021c48a |
|
BLAKE2b-256 | e45f512cd50257487b16715a35ba94327bfb039f93e93ffff93d4b2a1d01e918 |
Hashes for yosai_alchemystore-0.3.0.post1-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e49bfe571d99921910082b3fab115394e4c54c422b0ce24fc4a92516024d5cd7 |
|
MD5 | 0be0cc3c10a8fcd5304165040fdda9f9 |
|
BLAKE2b-256 | 5ae771efce7aa3f85d2eb1a723a96700c494491a9d64015f9d47b05091c4739d |