Full stack authentication library for ASGI.
Project description
Imia
Imia (belarussian for "a name") is an authentication library for Starlette and FastAPI (python 3.8+).
Installation
Install imia
using PIP or poetry:
pip install imia
# or
poetry add imia
Features
- Login/logout flows
- Pluggable authenticators:
- WWW-Basic
- session
- token
- bearer token
- any token (customizable)
- API key
- Database agnostic user storage
- Authentication middleware
- with fallback strategies:
- redirect to an URL
- raise an exception
- do nothing
- with optional URL protection
- with option URL exclusion from protection
- with fallback strategies:
- User Impersonation (stateless and stateful)
- [WIP] Remember me
- [WIP] Two-Factor flow
Quick start
If you are too lazy to read this doc, take a look into examples/
directory. There you will find several files demoing
various parts of this library.
Docs
- Configuration
- Login/Logout flow
- User token
- Request authentication
- Authenticators
- User impersontation
Usage
See examples/ directory.
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
imia-0.2.1.tar.gz
(9.5 kB
view hashes)
Built Distribution
imia-0.2.1-py3-none-any.whl
(10.7 kB
view hashes)