Registry / web-framework / fastapi-cloudauth

fastapi-cloudauth

JSON →
library0.4.3pypypi✓ verified 88d ago

FastAPI integration with cloud authentication services (AWS Cognito, Auth0, Firebase Authentication). Current version 0.4.3. Low release cadence, last release Dec 2021.

pip install fastapi-cloudauth
INSTALL
IMPORT
SIG · FASTAPI-CLOUDAUTH
F
fastapi-cloudauth
web-frameworkpythonv0.4.3
Install
5.6s avg
Import
2122ms
Disk
53MB
Pass rate
10/ 10
Env Coverage10 / 10
glibc
3.9–3.13
musl
3.9–3.13
Install & Compatibility
Where this runs
tested against v0.4.3 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
py 3.10–3.910 runs
installs and imports cleanly · install 0.0s · import 2.222s · 53.6MB
glibc
py 3.10–3.910 runs
installs and imports cleanly · install 5.6s · import 2.021s · 53MB
53MB installed
● package 53MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

Auth0
✓ from fastapi_cloudauth.auth0 import Auth0
✗ from fastapi_cloudauth import Auth0
Auth0 is in a submodule, not top-level.
Cognito
✓ from fastapi_cloudauth.cognito import Cognito
✗ from fastapi_cloudauth import Cognito
Cognito is in a submodule.
Firebase
✓ from fastapi_cloudauth.firebase import Firebase
✗ from fastapi_cloudauth import Firebase
Firebase is in a submodule.
CurrentUser
✓ from fastapi_cloudauth.base import CurrentUser
✗ from fastapi_cloudauth import CurrentUser
CurrentUser is in base module.

Basic Auth0 integration; replace domain and audience with your values.

from fastapi import FastAPI, Depends from fastapi_cloudauth.auth0 import Auth0 app = FastAPI() auth = Auth0(domain='your-domain.auth0.com', audience='your-audience') @app.get("/secure") def secure_route(user: dict = Depends(auth.get_user)): return {"user": user}
Debug
Known issues
breakingv0.3.0 changed Auth0's default scope key from 'scope' to 'permissions'. If you rely on the old key, update your RBAC settings.
fix
Ensure Auth0 RBAC settings are configured to use 'permissions' claim or explicitly set scope_key='scope' when creating Auth0 instance.
affects: >=0.3.0
gotchaImporting from top-level 'fastapi_cloudauth' (e.g., `from fastapi_cloudauth import Auth0`) raises ImportError. Providers are in submodules.
fix
Use correct submodule imports: `from fastapi_cloudauth.auth0 import Auth0`.
affects: all
deprecatedLibrary is in maintenance mode; no major updates since 2021. Not compatible with FastAPI 0.100+ (uses deprecated `jsonable_encoder` behavior).
fix
Pin FastAPI to <0.100 or consider migration to alternative auth libraries (e.g., fastapi-jwt-auth).
affects: all
Errors
Common errors & fixes
ImportError: cannot import name 'Auth0' from 'fastapi_cloudauth'
Trying to import from the top-level package instead of submodule.
fix
Use: from fastapi_cloudauth.auth0 import Auth0
AttributeError: 'NoneType' object has no attribute 'decode'
Invalid or expired token, or missing JWKS endpoint. Common with self-signed tokens.
fix
Verify your token is valid and the provider's JWKS URL is reachable. For local testing, ensure you use a real token.
jose.exceptions.ExpiredSignatureError
Token has expired.
fix
Refresh the token or obtain a new one.
Upgrade
Version history
0.4.3latest on PyPI · released Jan 6, 2022
Audit
Dependencies
fastapirequiredRequired for FastAPI integration
python-jose[cryptography]optionalRequired for JWT verification, especially Firebase
httpxrequiredUsed to fetch JWKS keys
Agent activity
43 hits · last 30 days
node
38
OpenAI (training)
1
Resources
fastapi-cloudauth — pip install fastapi-cloudauth · libregistry