/aioauth

Asynchronous OAuth 2.0 provider for Python 3

Primary LanguagePythonMIT LicenseMIT

Asynchronous OAuth 2.0 framework for Python 3

Build Status Coverage License PyPi Python 3.6

aioauth implements OAuth 2.0 protocol and can be used in asynchronous frameworks like FastAPI / Starlette, aiohttp. It can work with any databases like MongoDB, PostgreSQL, MySQL and ORMs like gino, sqlalchemy or databases over simple BaseStorage interface.

Why this project exists?

There are few great OAuth frameworks for Python like oauthlib and authlib, but they do not support asyncio and rewriting these libraries to asyncio is a significant challenge (see issues here and here).

Supported RFCs

Installation

python -m pip install aioauth

FastAPI demo APP

Here you can find an example of OAuth 2.0 server implementation using aioauth and FastAPI: https://github.com/aliev/aioauth-fastapi