No description
- Python 100%
| docs/source | ||
| oidc_workbench | ||
| oidc_workbench.egg-info | ||
| tests | ||
| .gitignore | ||
| oidcwtf.py | ||
| pyproject.toml | ||
| pytest.ini | ||
| README.md | ||
| test_simple.py | ||
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
-
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 -
Launch the workbench:
python -m oidc_workbenchor, after installing the package:
oidc-workbench -
Navigate with the arrow keys and press
Enterto 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.