How yokoinc/orthanc-authelia works
ORTHANC-AUTHELIA is a browser-administered PACS combining DICOM storage, Authelia single sign-on, OHIF viewing, and limited external sharing. The main workflow is browser → Nginx → Authelia for account-based access, then OHIF and Orthanc for imaging; share links instead pass through auth-service token validation and enforce study, expiry, and usage limits. Administrators use the same service’s panel for accounts, modalities, Orthanc settings, session/public-address configuration, backups, audit, and health. The README documents these capabilities; sampled source confirms selected routing, token, and admin behavior, not every stack connection.
Main entry points: nginx Nginx gateway · auth_service.py Auth service · orthanc.json.example Orthanc PACS · authelia-configuration.yml.example Authelia SSO
Components 16
Access gateway
- Nginx gateway
services/nginx
Identity and sharing
- Authelia SSO
authelia-configuration.yml.example - Session store
- Auth service
services/auth-service/sources/auth_service.py - Share tokens
services/auth-service/sources/auth_service.py - Authelia users
authelia-users.yml.example - Share management
services/auth-service/sources/static/token-manager.js
PACS and viewer
- OHIF viewer
services/ohif/config/app-config.js - Orthanc PACS
orthanc.json.example - PACS database
services/postgres
Administration
- Admin panel
services/auth-service/sources/templates/admin.html - Admin interactions
services/auth-service/sources/static/admin.js - Admin API
services/auth-service/sources/admin_module.py - Setup wizard
services/auth-service/sources/templates/setup.html - Translations
services/auth-service/sources/i18n.py
Other components
- Browser
Connections 22
- Browser → Nginx gateway: requests PACS
- Nginx gateway → Authelia SSO: auth checks
- Authelia SSO → Session store: stores sessions
- Authelia SSO → Authelia users: reads users
- Nginx gateway → OHIF viewer: serves viewer
- Nginx gateway → Orthanc PACS: proxies imaging
- OHIF viewer → Orthanc PACS: requests DICOM
- Orthanc PACS → PACS database: stores PACS data
- Browser → Nginx gateway: opens share link
- Nginx gateway → Auth service: routes share
- Auth service → Share tokens: validates usage
- Auth service → Session store: uses token state
- OHIF viewer → Auth service: validates token
- Browser → Admin panel: uses panel
- Admin panel → Admin interactions: loads script
- Admin interactions → Admin API: calls admin API
- Admin API → Orthanc PACS: reads and updates config
- Browser → Setup wizard: starts setup
- Setup wizard → Auth service: submits setup
- Admin panel → Translations: loads translations
- Browser → Share management: manages shares
- Share management → Auth service: calls token API