No description
Find a file
2026-06-16 15:42:09 +02:00
docs/source Import python mess 2025-11-28 15:21:31 +01:00
oidc_workbench Add missing stuff 2026-06-16 15:42:09 +02:00
oidc_workbench.egg-info Add missing stuff 2026-06-16 15:42:09 +02:00
tests Import python mess 2025-11-28 15:21:31 +01:00
.gitignore Add missing stuff 2026-06-16 15:42:09 +02:00
oidcwtf.py Add missing stuff 2026-06-16 15:42:09 +02:00
pyproject.toml Import python mess 2025-11-28 15:21:31 +01:00
pytest.ini Import python mess 2025-11-28 15:21:31 +01:00
README.md Add missing stuff 2026-06-16 15:42:09 +02:00
test_simple.py Import python mess 2025-11-28 15:21:31 +01:00

OIDC Workbench

A modern Textual-based terminal UI that helps you exercise common OpenID Connect flows against any standards-compliant identity provider.

Features

  • Authorization Code + PKCE browser handoff with local loopback capture
  • Refresh, client credentials, device code, UserInfo, introspection, revocation, and RP-initiated logout helpers
  • Automatic HTTP transcript capture with optional redaction and log streaming
  • Token cache reuse across runs to speed up iterative testing

Quick start

  1. Export the required OIDC application secrets:

    export OIDC_CLIENT_ID=...
    export OIDC_CLIENT_SECRET=...
    export OIDC_DISCOVERY_URL=https://idp.example.com/.well-known/openid-configuration
    
  2. Launch the workbench:

    python -m oidc_workbench
    

    or, after installing the package:

    oidc-workbench
    
  3. Navigate with the arrow keys and press Enter to trigger a flow. The right-hand log pane streams live status updates and sanitized HTTP payloads.

Additional behaviour is controlled via environment variables (SCOPE, OIDC_REDIRECT_URI, HTTP_SAVE, etc.), mirroring the legacy script. See Settings.summary() at runtime for the active values.

Development

The project uses a pyproject.toml with setuptools. To install in editable mode:

python -m pip install --editable .

Run the TUI after installation with oidc-workbench.