feat(spaces): decouple IdP group client; IdP-write as an off-by-default power mode (#215) #222
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feat-groups-config"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Splits the IdP admin client out of the encryption config and by privilege (ADR 0001).
auth.groupsconfig (GroupsConfig):keycloakBaseUrl/Realm/ClientId/ClientSecret+manage(the Option A power switch). Secret also viaCAIRN_GROUPS_KEYCLOAK_CLIENT_SECRET.main.go: the IdP admin client is built fromauth.groups.*, or — for back-compat — adopted from the legacystorage.encryption.keycloak*client (which also impliesmanage: true, preserving existing IdP-managed instances like the keycloak-profile dogfood).apiH.Spaces(the IdPSpacesAPI) wires only whenmanageis on. Off by default → the IdP-brokered spaces API is not exposed (app-owned spaces take over in #216).manage-usersblast radius when the power mode is on.groups_test.go: parses the new block; defaults to off. An instance with no client andmanage:falsenever builds the IdP manager (the openbao/AD/local default).Net effect for the openbao dogfood once #216 lands: no IdP client needed, spaces are app-owned. The keycloak-profile dogfood keeps IdP-managed spaces via back-compat.