INC-2026-02-14-001: Prevention
Key Lessons
| Lesson | Action |
|---|---|
ISE SAML is GUI-only |
No ERS/OpenAPI endpoint exists for SAML IdP configuration |
Keycloak is fully API-driven |
All SAML client updates can be automated via REST API |
Entity ID survives restores |
ISE Entity ID is deployment-specific, not hostname-specific |
sed is powerful |
Simple |
PUT requires full object |
Keycloak doesn’t support PATCH - GET/modify/PUT workflow required |
Prevention Checklist
Pre-Restore
-
Document current ISE Entity ID from SP metadata
-
Export Keycloak SAML client configuration
-
Note all hostname-specific URLs
Post-Restore
-
Verify ISE Entity ID unchanged
-
Update Keycloak SAML client redirect URIs
-
Update ACS URL in client attributes
-
Test SAML login before declaring restore complete
Automation Opportunity
Create netapi keycloak update-saml-client command:
netapi keycloak update-saml-client \
--realm domusdigitalis \
--client-id "http://CiscoISE/a486c6ef-6c77-4bc1-bf6d-4e479b3aeae8" \
--old-hostname ise-02 \
--new-hostname ise-01