Skip to main content

No project description provided

Project description

Fastapi JWKS Auth(Validator)

Overview

FastAPI JWK Auth is a Python package designed to enhance FastAPI applications with easy and secure JSON Web Token (JWT) validation using JSON Web Key Sets (JWKS). It simplifies the integration of JWT-based authentication in your FastAPI project when JWKS URLs are employed for key retrieval.

Features

  • JWKS-Based JWT Validation: Seamlessly validate JWTs using JWKS obtained from configured URLs.
  • FastAPI Middleware Integration: Integrate the provided JWTMiddleware class into your FastAPI application middleware like app.add_middleware(JWTMiddleware) to secure your routes with JWT validation.
  • Fastapi Router dependency: Integrate the provided jwk_validator function into your FastAPI router like app.include_router(auth_app.router, dependencies=[Depends(jwk_validator)]) to secure your product with JWT validation
  • Efficient JWK Handling: Retrieve and utilize JSON Web Key Sets efficiently in your FastAPI routes with the fetch_jwks function.
  • Exception Handling: Easily manage JWT validation exceptions using FastAPI's HTTPException.

Installation

Install the package using pip:

pip install fastapi-jwk-auth

Usage

FastAPI Middleware Integration

from fastapi import FastAPI, Depends
from fastapi_jwk_auth import JWTMiddleware

app = FastAPI()

# Include the JWT Middleware
app.add_middleware(JWTMiddleware)

FastAPI Route JWT Validation

from fastapi import FastAPI, Depends

app=FastAPI()

app.include_router(auth_app.router, dependencies=[Depends(jwk_validator)])

Configuration

Set the following environment variable to the JSON Web Key Set (JWKS) URI:

JWK_HOST="https://your-identity-server"

Contributing

Feel free to open PR/Issues.

License

This project is licensed under the MIT License.

Contact

For questions or feedback, feel free to contact us at [omkardarves@gmail.com].

Project details


Download files

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

Source Distribution

fastapi-jwk-auth-0.0.2b0.tar.gz (3.7 kB view details)

Uploaded Source

Built Distribution

fastapi_jwk_auth-0.0.2b0-py3-none-any.whl (4.3 kB view details)

Uploaded Python 3

File details

Details for the file fastapi-jwk-auth-0.0.2b0.tar.gz.

File metadata

  • Download URL: fastapi-jwk-auth-0.0.2b0.tar.gz
  • Upload date:
  • Size: 3.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.0

File hashes

Hashes for fastapi-jwk-auth-0.0.2b0.tar.gz
Algorithm Hash digest
SHA256 d77d8c1711e9473f2694369b4fceec01f926b9ef7b2bab95744d3e42e0e089b0
MD5 9aa9334602f465d777a7bfb189592483
BLAKE2b-256 384f6246a102cc4cdb9dec490e56a675ad3cbbbb0a8844e8bb58093eee128755

See more details on using hashes here.

File details

Details for the file fastapi_jwk_auth-0.0.2b0-py3-none-any.whl.

File metadata

File hashes

Hashes for fastapi_jwk_auth-0.0.2b0-py3-none-any.whl
Algorithm Hash digest
SHA256 9f36fa9cfc70252ff0b7b369cf65c37d8cdab214f71a75079b761778d913554e
MD5 7097581911df0b8eb666fb4e5692babe
BLAKE2b-256 48f64c525b8b9aacca74bb9510270f2c792387a58c2f0553d834fcb343a29323

See more details on using hashes here.

Supported by

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