Skip to main content

pyobs-auth

Shared Keycloak/OIDC authentication client for pyobs web services (pyobs-archive, pyobs-portal, and future services), so each one doesn't reimplement OIDC discovery, token validation, and user mapping on its own.

Single issuer only, by design: every service trusts exactly one Keycloak realm. Any upstream identity provider (an institute's SSO, a self-hosted observation-portal, ...) is meant to be brokered behind that Keycloak instance, not validated directly by this library - see docs/source/architecture.rst for the full reasoning.

Documentation

Full installation (adding this to a Django project), configuration (every PYOBS_AUTH key), architecture, and API reference: see docs/source/ (built with Sphinx — cd docs && uv run --group dev make html).

Development

git clone https://github.com/pyobs/pyobs-auth.git
cd pyobs-auth
uv sync --group dev
uv run pytest
uv run ruff check pyobs_auth/
uv run black --check .
uv run pyrefly check pyobs_auth

Metadata

Release files for pyobs-auth 2.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyobs-auth 2.1.1
File Size Uploaded
pyobs_auth-2.1.1.tar.gz 15.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pyobs-auth 2.1.1
File Interpreter ABI Platform
pyobs_auth-2.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 34.7 kB

Release files / pyobs_auth-2.1.1.tar.gz

Download URL pyobs_auth-2.1.1.tar.gz
Size 15.5 kB
Tags Source
SHA-256 checksum
How to use checksums
16a62765c9b71f683d0297b4d58289eea22a41a656009152ede1cd1a6c7fb6b4
BLAKE2b-256 checksum
How to use checksums
ff73ffb10071dba8536e5a8110faaa571f842e5c52c97ffa29d6e030c56a50b6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / pyobs_auth-2.1.1-py3-none-any.whl

Download URL pyobs_auth-2.1.1-py3-none-any.whl
Size 19.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a44fd72428147fe5ddf131d9aa9f907b830db0e84fe61b36de48a7947aa5630b
BLAKE2b-256 checksum
How to use checksums
54f6ca357f6f05837938662ad385c004355b9554aedfd24fce83a7257e9048ca
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page