Skip to main content

Python module to add username and password authentication to specific FastAPI routes

Project description

FastAPIAuthenticator

Python module to add username and password authentication to specific FastAPI routes

Python

Platform Supported

Platform

Installation

repo="thevickypedia/FastAPIAuthenticator"

latest=$(curl -s https://api.github.com/repos/${repo}/tags | jq -r '.[0].name')

pip install "git+https://github.com/${repo}.git@${latest}"

Usage

import fastapiauthenticator as api

from fastapi import FastAPI

app = FastAPI()

@app.get("/public")
async def public_route():
    return {"message": "This is a public route"}

async def private_route():
    return {"message": "This is a private route"}

api.protect(
    app=app,
    params=api.Parameters(
        path="/private",
        function=private_route
    )
)

FastAPIAuthenticator supports both APIRoute and APIWebSocketRoute routes.
Refer samples directory for different use-cases.

Coding Standards

Docstring format: Google
Styling conventions: PEP 8 and isort

Release Notes

Requirement

python -m pip install gitverse

Usage

gitverse-release reverse -f release_notes.rst -t 'Release Notes'

Linting

Requirement

python -m pip install sphinx==5.1.1 pre-commit recommonmark

Usage

pre-commit run --all-files

License & copyright

© Vignesh Rao

Licensed under the MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fastapi_ui_auth-0.1.1-py3-none-any.whl (16.7 kB view details)

Uploaded Python 3

File details

Details for the file fastapi_ui_auth-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for fastapi_ui_auth-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e34fa2dcd1074e5d974c31aa42ddb759ab9f3cf66edb7c27486731bafaf3bc92
MD5 6cf3d71400ffa5f46e9c4b1521a88fcf
BLAKE2b-256 9c67314866f48f2dd1b462e1f9aa079164cfe43cc0cbed89d4024b8044671437

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page