Users & Settings
Overview
coreX Manager includes a user management system with authentication, two-factor authentication (2FA), theme customization, and global option toggles that control feature availability across the platform.
Authentication
Admin User
On first startup, coreX Manager creates an admin user. The password is read from the ADMIN_PASSWORD environment variable. If unset, a random password is generated and printed to the logs.
If ADMIN_PASSWORD is not set, a random password is generated. Check the startup logs for the password and change it immediately after first login.
Login
- Navigate to the coreX Manager URL
- Enter username and password
- If 2FA is enabled, enter the TOTP code
- You receive a JWT token for API access
JWT Tokens
Authentication uses JWT tokens. Tokens are:
- Issued on login
- Included in API requests as
Authorization: Bearer <token> - Refreshable via the refresh endpoint
- Revocable (individual tokens can be revoked)
Two-Factor Authentication (2FA)
2FA uses TOTP (Time-based One-Time Password) compatible with authenticator apps.
Enabling 2FA
- Navigate to Management > Users and open your user profile
- Click Enable 2FA
- Scan the QR code with your authenticator app
- Enter the verification code to confirm
- Save the backup codes in a secure location
Disabling 2FA
- Open your user profile
- Click Disable 2FA
- Enter your password to confirm
When you enable 2FA, coreX Manager generates one-time backup codes. Store these securely — each can be used once if you lose access to your authenticator device.
User Management
Creating Users
- Navigate to Management > Users
- Click Add User
- Enter username, email, and password
- Assign a role (admin or read-only)
- Save
Roles
| Role | Description |
|---|---|
| admin | Full access to all features and settings |
| read-only | Can view all pages but cannot make changes |
Managing Users
- Edit user details
- Reset password
- Enable/disable 2FA (admin can reset for users who lost access)
- Delete users (cannot delete the last admin)
Themes
coreX Manager supports runtime theme switching via CSS variables. Users can also create custom themes.
Built-in Themes
6 built-in themes are available:
- Slate Dark
- Dracula
- Tokyo Night
- Catppuccin Mocha
- Material Light
- Catppuccin Latte
Custom Themes
- Navigate to Settings > Appearance
- Click Create Custom Theme
- Clone from a built-in theme or start from scratch
- Customize the 18 color variables (backgrounds, borders, text, semantic, status)
- Preview live as you edit
- Save with a custom name
Theme Persistence
The active theme is persisted to localStorage and applied on page load. Custom themes are also stored in localStorage.
Global Options
Global options control feature availability across the platform. These are the main toggles:
| Option | Description |
|---|---|
req_fp_enabled | Request fingerprinting (required for Risk Scoring) |
ja4_enabled | JA4 TLS fingerprinting |
compression_enabled | Brotli and zstd compression module |
disk_cache_enabled | Disk cache (L2) sidecar |
resp_transform_enabled | Response transforms (replace, inject, mask) |
img_2_webp_enabled | Image to WebP conversion |
api_armor_enabled | API Armor (GraphQL, schema validation, profiling) |
Some features depend on others. For example, Risk Scoring requires req_fp_enabled, and JA4-derived risk fields require ja4_enabled. coreX Manager shows these dependencies in the UI and warns if you try to enable a feature without its prerequisites.
Step-by-Step: Change the Admin Password
- Log in as admin
- Navigate to Management > Users and open the admin user
- Click Change Password
- Enter the current password and new password
- Save
Step-by-Step: Create a Read-Only User
- Navigate to Management > Users
- Click Add User
- Username:
viewer - Email:
viewer@example.com - Password: a strong password
- Role: read-only
- Save
The user can now log in and view all pages but cannot make changes.
Step-by-Step: Enable a Feature
- Navigate to Settings > Global Options
- Find the feature you want to enable (e.g.
api_armor_enabled) - Toggle it on
- Review any dependency warnings
- Save and Apply Changes
Step-by-Step: Create a Custom Theme
- Navigate to Settings > Appearance
- Click Create Custom Theme
- Select a built-in theme to clone from (e.g. Dracula)
- Name your theme (e.g.
My Custom Dark) - Adjust colors using the color pickers:
- Background colors
- Border colors
- Text colors
- Semantic colors (primary, secondary, accent)
- Status colors (success, warning, error, info)
- Preview the changes live
- Click Save
- Select your custom theme from the theme picker
Verification
-
Test login:
curl -k -X POST https://localhost/api/v1/auth/login -H "Content-Type: application/json" -d '{"username":"admin","password":"your-password"}'Expect a JWT token in the response.
-
Test 2FA:
- Enable 2FA on your account
- Log out and log back in
- Verify the TOTP code is required
-
Test read-only role:
- Log in as the read-only user
- Attempt to create a backend
- Expect a 403 Forbidden response
-
Test theme switching:
- Switch between built-in themes
- Verify the UI updates immediately
- Refresh the page and verify the theme persists
Next Steps
- Audit & Snapshots — Track config changes
- MCP Gateway — Connect AI agents
- Quick Start — Get started with coreX Manager