Keycloak Commands
Prerequisites
Load identity secrets before using Keycloak commands:
eval "$(dsec source d000 dev/identity)"
Realm Commands
Group Commands
delete-group
Delete a group:
netapi keycloak delete-group domusdigitalis ise-helpdesk
# Skip confirmation
netapi keycloak delete-group domusdigitalis ise-helpdesk --force
user-groups
List groups a user belongs to:
netapi keycloak user-groups domusdigitalis evanusmodestus
Example Output
Groups for 'evanusmodestus'
┏━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━┓
┃ Name ┃ Path ┃
┡━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━┩
│ gitea-admin │ /gitea-admin │
│ ise-super-admin │ /ise-super-admin │
│ nas-admin │ /nas-admin │
└─────────────────┴──────────────────┘
Client Commands
Integration Examples
ISE SAML Integration
Complete workflow for ISE SAML setup:
eval "$(dsec source d000 dev/identity)"
# Create ISE admin groups
netapi keycloak create-group domusdigitalis ise-super-admin
netapi keycloak create-group domusdigitalis ise-read-only
netapi keycloak create-group domusdigitalis ise-helpdesk
# Add user to admin group
netapi keycloak add-user-to-group domusdigitalis evanusmodestus ise-super-admin
# Get SAML metadata for ISE import
netapi keycloak get-saml-metadata domusdigitalis -o /tmp/keycloak-metadata.xml
Backup Commands
backup
Backup all realms to local storage or NAS:
# Backup all realms
netapi keycloak backup
# Backup and upload to NAS
netapi keycloak backup --upload-nas
# Specify NAS destination
netapi keycloak backup --upload-nas --nas-folder /Backups/keycloak
Sample Output
╭──────────────────────────────────────────────────╮ │ Keycloak Realm Backup │ ╰──────────────────────────────────────────────────╯ Host: https://keycloak-01.inside.domusdigitalis.dev:8443 Realms: 2 ✓ domusdigitalis → keycloak-01-inside-domusdigitalis-dev-domusdigitalis-20260124-185721.json ✓ master → keycloak-01-inside-domusdigitalis-dev-master-20260124-185721.json ✓ Exported 2 realms Timestamp: 2026-01-24T18:57:22.272408 Uploading to Synology NAS... ✓ keycloak-01-inside-domusdigitalis-dev-domusdigitalis-20260124-185721.json ✓ keycloak-01-inside-domusdigitalis-dev-master-20260124-185721.json ✓ Uploaded 2 files to /Backups/keycloak
Options:
| Option | Short | Description |
|---|---|---|
|
|
Upload to Synology NAS |
|
NAS destination folder |
NAS Upload Requirements
For --upload-nas to work, load storage secrets:
dsource d000 dev/storage
Required variables in dev/storage:
| Variable | Description |
|---|---|
|
NAS IP address |
|
API username |
|
API password |
|
Destination folder (default: /keycloak_backups) |