HOTOSM SSO authentication library for Hanko + OSM OAuth
Project description
HOTOSM Auth Library - Python
FastAPI/Django integration for Hanko authentication with OSM OAuth support.
Installation
pip install hotosm-auth
Usage
FastAPI
from fastapi import FastAPI, Depends
from hotosm_auth.integrations.fastapi import CurrentUser
app = FastAPI()
@app.get("/me")
async def get_me(user: CurrentUser):
return {"id": user.id, "email": user.email}
Django
from django.http import JsonResponse
from hotosm_auth.integrations.django import require_auth
@require_auth
def my_view(request):
return JsonResponse({"user_id": request.user.id})
Features
- JWT validation for Hanko tokens
- OSM OAuth 2.0 integration
- User mapping between Hanko and application users
- FastAPI and Django integrations
Configuration
Set these environment variables:
HANKO_API_URL=https://login.hotosm.org
OSM_CLIENT_ID=your_osm_client_id
OSM_CLIENT_SECRET=your_osm_secret
COOKIE_SECRET=your_secret_key
License
AGPL-3.0
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
hotosm_auth-0.2.5.tar.gz
(104.8 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file hotosm_auth-0.2.5.tar.gz.
File metadata
- Download URL: hotosm_auth-0.2.5.tar.gz
- Upload date:
- Size: 104.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
39549718d5680eae570b4cb41660fde62377b9d0e266cbd42a581d0775782644
|
|
| MD5 |
3d2edbd553eab66b3e3ec8d242e23f29
|
|
| BLAKE2b-256 |
9e84240276baae69b2de4004c12ae0f71fb0c62f5bbfafb19a0ab7c3c553cee8
|
File details
Details for the file hotosm_auth-0.2.5-py3-none-any.whl.
File metadata
- Download URL: hotosm_auth-0.2.5-py3-none-any.whl
- Upload date:
- Size: 46.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e5218acf8ec539616607e878467620c80071cf569d6e7f73e28d083da599162d
|
|
| MD5 |
29004968859f5765f2fa8c7132e28623
|
|
| BLAKE2b-256 |
f7aabdc77438f9ca39257fda8a9aea17b1ea0e9495fddd603eefb5d84343e180
|