{ "info": { "author": "Darin Gordon", "author_email": "dkcdkg@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Topic :: Security", "Topic :: Software Development :: Libraries :: Application Frameworks", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "# Yosai AlchemyStore\n\nThis 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.\n\nAn ``AccountStore`` is a data access object (DAO) that provides an interface to\na datastore, in this case a relational database. YosaiAlchemyStore is named as such\nto indicate its use of the [SQLAlchemy](http://www.sqlalchemy.org) library to enable all RDBMS connectivity.\n\n\n# Installation\n\nInstall YosaiAlchemyStore from PyPI using pip:\n ``pip install yosai_alchemystore``\n\n\n## Setup\n\nAn AlchemyAccountStore can be configured through one of two ways:\n\n* Option 1: YAML Config File\n 1. Define a system environment variable, YOSAI_ALCHEMYSTORE_SETTINGS, that points to \n the location of alchemystore_settings.yaml file and ensure that the file\n permissions make it readable.\n\n 2. Instantiate an AlchemyAccountStore without arguments. \n\n* Option 2: Passing a dburl argument\n - instantiate an AlchemyAccountStore, passing a \"dburl\" argument as\n defined by SQLAlchemy: http://docs.sqlalchemy.org/en/latest/core/engines.html#database-urls\n\n\n## API\n\nThe ``AccountStore`` API consists of two abstract base classes within the ``yosai.core.account.abcs`` module.\nIt's a simple API, consisting of a request method to obtain Account credentials (passwords)\nand a request method to obtain Account authorization information (roles and permissions).\n\n\n## Data Models\n\nFollowing 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.\n![](/doc/db_schema.png)\n\n\n## Dev Status: as of v0.0.5\n\nThe project has been released after being tested as part of yosai integrated testing.\nUnit tests are pending development.\n\n\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://www.github.com/yosaiproject/yosai_alchemystore", "keywords": "sqlalchemy rbac yosai", "license": "Apache License 2.0", "maintainer": "", "maintainer_email": "", "name": "yosai-alchemystore", "package_url": "https://pypi.org/project/yosai-alchemystore/", "platform": "", "project_url": "https://pypi.org/project/yosai-alchemystore/", "project_urls": { "Homepage": "http://www.github.com/yosaiproject/yosai_alchemystore" }, "release_url": "https://pypi.org/project/yosai-alchemystore/0.3.0.post1/", "requires_dist": [ "yosai", "sqlalchemy", "psycopg2" ], "requires_python": "", "summary": "An RDBMS solution for Yosai, featuring a flat RBAC data model", "version": "0.3.0.post1" }, "last_serial": 2480911, "releases": { "0.0.5": [], "0.1.0": [ { "comment_text": "", "digests": { "md5": "3d813821c4dbbbe3d061e7e8e7b0e337", "sha256": "db826f1d68fb974e609428d0c4a83af45ccfda15133a3e509b8052584b058585" }, "downloads": -1, "filename": "yosai_alchemystore-0.1.0-py34.py35-none-any.whl", "has_sig": false, "md5_digest": "3d813821c4dbbbe3d061e7e8e7b0e337", "packagetype": "bdist_wheel", "python_version": "py34.py35", "requires_python": null, "size": 14429, "upload_time": "2016-08-31T20:10:49", "url": "https://files.pythonhosted.org/packages/af/bd/2b2c309c390b4e25a79bae37f9b7f4991e5b980b4ea64fbbe2e4c36d1ee6/yosai_alchemystore-0.1.0-py34.py35-none-any.whl" }, { "comment_text": "", "digests": { "md5": "dfdb19ebd7416882399cfa96dbfeed16", "sha256": "4154a7a4d1d13aa2ac7f7aab745738fecbaa71b059714cc30a4cf52294ad649a" }, "downloads": -1, "filename": "yosai_alchemystore-0.1.0.tar.gz", "has_sig": false, "md5_digest": "dfdb19ebd7416882399cfa96dbfeed16", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23890, "upload_time": "2016-08-31T20:10:51", "url": "https://files.pythonhosted.org/packages/99/67/bb2e08defb63c3cbed518e49d506b7a47bdd79838c536bb0df2223b23da5/yosai_alchemystore-0.1.0.tar.gz" } ], "0.3.0.post1": [ { "comment_text": "", "digests": { "md5": "0be0cc3c10a8fcd5304165040fdda9f9", "sha256": "e49bfe571d99921910082b3fab115394e4c54c422b0ce24fc4a92516024d5cd7" }, "downloads": -1, "filename": "yosai_alchemystore-0.3.0.post1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0be0cc3c10a8fcd5304165040fdda9f9", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 15355, "upload_time": "2016-11-24T14:16:03", "url": "https://files.pythonhosted.org/packages/5a/e7/71efce7aa3f85d2eb1a723a96700c494491a9d64015f9d47b05091c4739d/yosai_alchemystore-0.3.0.post1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f329ba43b9162cab3b4a534c5021c48a", "sha256": "3adc9f96880fba5d9cf28d27e981ea70ff0cfa42c267afa424d1280627d29ced" }, "downloads": -1, "filename": "yosai_alchemystore-0.3.0.post1.tar.gz", "has_sig": false, "md5_digest": "f329ba43b9162cab3b4a534c5021c48a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24465, "upload_time": "2016-11-24T14:16:05", "url": "https://files.pythonhosted.org/packages/e4/5f/512cd50257487b16715a35ba94327bfb039f93e93ffff93d4b2a1d01e918/yosai_alchemystore-0.3.0.post1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0be0cc3c10a8fcd5304165040fdda9f9", "sha256": "e49bfe571d99921910082b3fab115394e4c54c422b0ce24fc4a92516024d5cd7" }, "downloads": -1, "filename": "yosai_alchemystore-0.3.0.post1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0be0cc3c10a8fcd5304165040fdda9f9", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 15355, "upload_time": "2016-11-24T14:16:03", "url": "https://files.pythonhosted.org/packages/5a/e7/71efce7aa3f85d2eb1a723a96700c494491a9d64015f9d47b05091c4739d/yosai_alchemystore-0.3.0.post1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f329ba43b9162cab3b4a534c5021c48a", "sha256": "3adc9f96880fba5d9cf28d27e981ea70ff0cfa42c267afa424d1280627d29ced" }, "downloads": -1, "filename": "yosai_alchemystore-0.3.0.post1.tar.gz", "has_sig": false, "md5_digest": "f329ba43b9162cab3b4a534c5021c48a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24465, "upload_time": "2016-11-24T14:16:05", "url": "https://files.pythonhosted.org/packages/e4/5f/512cd50257487b16715a35ba94327bfb039f93e93ffff93d4b2a1d01e918/yosai_alchemystore-0.3.0.post1.tar.gz" } ] }