aioauth


Nameaioauth JSON
Version 1.7.0 PyPI version JSON
download
home_pagehttps://github.com/aliev/aioauth
SummaryAsynchronous OAuth 2.0 framework for Python 3.
upload_time2024-10-20 07:19:03
maintainerNone
docs_urlNone
authorAli Aliyev
requires_python>=3.7.0
licenseThe MIT License (MIT)
keywords asyncio oauth2 oauth
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ## Asynchronous OAuth 2.0 framework for Python 3

[![Build Status](https://github.com/aliev/aioauth/workflows/CI/badge.svg?branch=master)](https://github.com/aliev/aioauth/actions/workflows/ci.yml?query=branch%3Amaster)
[![Coverage](https://badgen.net/codecov/c/github/aliev/aioauth)](https://app.codecov.io/gh/aliev/aioauth)
[![License](https://img.shields.io/github/license/aliev/aioauth)](https://github.com/aliev/aioauth/blob/master/LICENSE)
[![PyPi](https://badgen.net/pypi/v/aioauth)](https://pypi.org/project/aioauth/)
[![Python 3.7](https://img.shields.io/badge/python-3.7-blue.svg)](https://www.python.org/downloads/release/python-370/)

`aioauth` implements [OAuth 2.0 protocol](https://tools.ietf.org/html/rfc6749) and can be used in asynchronous frameworks like [FastAPI / Starlette](https://github.com/tiangolo/fastapi), [aiohttp](https://github.com/aio-libs/aiohttp). It can work with any databases like `MongoDB`, `PostgreSQL`, `MySQL` and ORMs like [gino](https://python-gino.org/), [sqlalchemy](https://www.sqlalchemy.org/) or [databases](https://pypi.org/project/databases/) over simple [BaseStorage](aioauth/storage.py) interface.

## Why this project exists?

There are few great OAuth frameworks for Python like [oauthlib](https://github.com/oauthlib/oauthlib) and [authlib](https://github.com/lepture/authlib), but they do not support asyncio and rewriting these libraries to asyncio is a significant challenge (see issues [here](https://github.com/lepture/authlib/issues/63) and [here](https://github.com/oauthlib/oauthlib/issues/415)).

## Supported RFCs

- [x] [The OAuth 2.0 Authorization Framework](https://tools.ietf.org/html/rfc6749)
- [X] [OAuth 2.0 Token Introspection](https://tools.ietf.org/html/rfc7662)
- [X] [Proof Key for Code Exchange by OAuth Public Clients](https://tools.ietf.org/html/rfc7636)
- [x] OpenID support

## Installation

```
python -m pip install aioauth
```

## FastAPI

FastAPI integration stored on separated [aioauth-fastapi](https://github.com/aliev/aioauth-fastapi) repository and can be installed via the command:

```
python -m pip install aioauth[fastapi]
```

[aioauth-fastapi](https://github.com/aliev/aioauth-fastapi) repository contains demo example which I recommend to look.

## [API Reference and User Guide](https://aliev.me/aioauth/)



            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/aliev/aioauth",
    "name": "aioauth",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.7.0",
    "maintainer_email": null,
    "keywords": "asyncio oauth2 oauth",
    "author": "Ali Aliyev",
    "author_email": "ali@aliev.me",
    "download_url": "https://files.pythonhosted.org/packages/fb/17/a548af2b18889446a94dd57551be1f7a93fdf3af9f90e2d00ee9833f5e3d/aioauth-1.7.0.tar.gz",
    "platform": null,
    "description": "## Asynchronous OAuth 2.0 framework for Python 3\n\n[![Build Status](https://github.com/aliev/aioauth/workflows/CI/badge.svg?branch=master)](https://github.com/aliev/aioauth/actions/workflows/ci.yml?query=branch%3Amaster)\n[![Coverage](https://badgen.net/codecov/c/github/aliev/aioauth)](https://app.codecov.io/gh/aliev/aioauth)\n[![License](https://img.shields.io/github/license/aliev/aioauth)](https://github.com/aliev/aioauth/blob/master/LICENSE)\n[![PyPi](https://badgen.net/pypi/v/aioauth)](https://pypi.org/project/aioauth/)\n[![Python 3.7](https://img.shields.io/badge/python-3.7-blue.svg)](https://www.python.org/downloads/release/python-370/)\n\n`aioauth` implements [OAuth 2.0 protocol](https://tools.ietf.org/html/rfc6749) and can be used in asynchronous frameworks like [FastAPI / Starlette](https://github.com/tiangolo/fastapi), [aiohttp](https://github.com/aio-libs/aiohttp). It can work with any databases like `MongoDB`, `PostgreSQL`, `MySQL` and ORMs like [gino](https://python-gino.org/), [sqlalchemy](https://www.sqlalchemy.org/) or [databases](https://pypi.org/project/databases/) over simple [BaseStorage](aioauth/storage.py) interface.\n\n## Why this project exists?\n\nThere are few great OAuth frameworks for Python like [oauthlib](https://github.com/oauthlib/oauthlib) and [authlib](https://github.com/lepture/authlib), but they do not support asyncio and rewriting these libraries to asyncio is a significant challenge (see issues [here](https://github.com/lepture/authlib/issues/63) and [here](https://github.com/oauthlib/oauthlib/issues/415)).\n\n## Supported RFCs\n\n- [x] [The OAuth 2.0 Authorization Framework](https://tools.ietf.org/html/rfc6749)\n- [X] [OAuth 2.0 Token Introspection](https://tools.ietf.org/html/rfc7662)\n- [X] [Proof Key for Code Exchange by OAuth Public Clients](https://tools.ietf.org/html/rfc7636)\n- [x] OpenID support\n\n## Installation\n\n```\npython -m pip install aioauth\n```\n\n## FastAPI\n\nFastAPI integration stored on separated [aioauth-fastapi](https://github.com/aliev/aioauth-fastapi) repository and can be installed via the command:\n\n```\npython -m pip install aioauth[fastapi]\n```\n\n[aioauth-fastapi](https://github.com/aliev/aioauth-fastapi) repository contains demo example which I recommend to look.\n\n## [API Reference and User Guide](https://aliev.me/aioauth/)\n\n\n",
    "bugtrack_url": null,
    "license": "The MIT License (MIT)",
    "summary": "Asynchronous OAuth 2.0 framework for Python 3.",
    "version": "1.7.0",
    "project_urls": {
        "Homepage": "https://github.com/aliev/aioauth",
        "Source": "https://github.com/aliev/aioauth"
    },
    "split_keywords": [
        "asyncio",
        "oauth2",
        "oauth"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "a30112d90ffb888e583aebde9e0498c172ddbcd3b9c36657c294944e31cfea86",
                "md5": "c39d227602ce7cc9db4735ceab5193a3",
                "sha256": "b4c007018c94c97776aa73bba74b8e6f1ee51a4d9ce912d02d193550c2ca5f8d"
            },
            "downloads": -1,
            "filename": "aioauth-1.7.0-py2.py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "c39d227602ce7cc9db4735ceab5193a3",
            "packagetype": "bdist_wheel",
            "python_version": "py2.py3",
            "requires_python": ">=3.7.0",
            "size": 28330,
            "upload_time": "2024-10-20T07:19:01",
            "upload_time_iso_8601": "2024-10-20T07:19:01.553556Z",
            "url": "https://files.pythonhosted.org/packages/a3/01/12d90ffb888e583aebde9e0498c172ddbcd3b9c36657c294944e31cfea86/aioauth-1.7.0-py2.py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "fb17a548af2b18889446a94dd57551be1f7a93fdf3af9f90e2d00ee9833f5e3d",
                "md5": "df1a444904f60dd98f4741229945a0a9",
                "sha256": "b2fae8c12afdabf53a428f354dfe3326e1152104f887886a72904d0916f88892"
            },
            "downloads": -1,
            "filename": "aioauth-1.7.0.tar.gz",
            "has_sig": false,
            "md5_digest": "df1a444904f60dd98f4741229945a0a9",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7.0",
            "size": 22489,
            "upload_time": "2024-10-20T07:19:03",
            "upload_time_iso_8601": "2024-10-20T07:19:03.183073Z",
            "url": "https://files.pythonhosted.org/packages/fb/17/a548af2b18889446a94dd57551be1f7a93fdf3af9f90e2d00ee9833f5e3d/aioauth-1.7.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-10-20 07:19:03",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "aliev",
    "github_project": "aioauth",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "aioauth"
}
        
Elapsed time: 0.31120s