Authentication & Roles
Login model, session cookies, and admin authorization
CH-UI authenticates against ClickHouse credentials over the selected connection tunnel.
Login Flow
- User picks a connection.
- User provides ClickHouse
username/password. - CH-UI verifies credentials through tunnel.
- CH-UI issues
chui_sessioncookie.
Session Endpoint
curl http://localhost:3488/api/auth/session \
-H "Cookie: chui_session=..."Response includes:
authenticateduseruser_role- active connection info
- app version
Role Resolution
CH-UI supports app-level role overrides for users:
adminanalystviewer
Admin-only routes are guarded server-side (RequireAdmin).
Login Failure Statuses
Common statuses returned by /api/auth/login:
401invalid credentials429IP/user rate limit503selected connection offline
Logout
curl -X POST http://localhost:3488/api/auth/logout \
-H "Cookie: chui_session=..."This deletes the server session and clears cookie state.
Security Notes
- In production, cookie is
Securewhen app runs in production mode. - Set strong
APP_SECRET_KEY. - Keep
ALLOWED_ORIGINSstrict to your UI origin(s).