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.jwks_auth import jwk_validator, JWKMiddleware

app = FastAPI()

# Include the JWT Middleware
app.add_middleware(JWTMiddleware)

FastAPI Route JWT Validation

from fastapi import FastAPI, Depends
from fastapi_jwk_auth.jwks_auth import jwk_validator, JWKMiddleware

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.4.tar.gz (4.0 kB view details)

Uploaded Source

Built Distribution

fastapi_jwk_auth-0.0.4-py3-none-any.whl (4.8 kB view details)

Uploaded Python 3

File details

Details for the file fastapi-jwk-auth-0.0.4.tar.gz.

File metadata

  • Download URL: fastapi-jwk-auth-0.0.4.tar.gz
  • Upload date:
  • Size: 4.0 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.4.tar.gz
Algorithm Hash digest
SHA256 6cde3ef53fb52a5979a3a1458d0412eb253ff1fc40ebb00d5f61424fe60002a8
MD5 a29f2c7dd67b2efe05cf585f7587664e
BLAKE2b-256 c0844d4eb6e20312db81e878bbed6871ac7f8bf8e83304adbe5e2b4c09a84b62

See more details on using hashes here.

File details

Details for the file fastapi_jwk_auth-0.0.4-py3-none-any.whl.

File metadata

File hashes

Hashes for fastapi_jwk_auth-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 2381eb6c010ee21368777363eb2b0d0c0735908da39e85efe3df7d585655d433
MD5 f070e6f6db03e56f7c7821e713ffbc05
BLAKE2b-256 5eea18e3738fe5b9d109560cea33790b036aa1cdba28b28f0a012631afbf91fa

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