feat(nubus): Integrate keycloak provisioning

This commit is contained in:
Nubus CI Bot
2024-08-12 11:11:59 +00:00
committed by Johannes Bornhold
parent 12951d4063
commit 46111ba718
5 changed files with 36 additions and 63 deletions

View File

@@ -72,6 +72,26 @@ ingress:
enabled: {{ .Values.ingress.tls.enabled }}
secretName: {{ .Values.ingress.tls.secretName | quote }}
provisioning:
enabled: true
config:
nubusBaseUrl: "https://{{ .Values.global.hosts.intercomService }}.{{ .Values.global.domain }}"
keycloak:
url: "http://ums-keycloak:8080/realms/{{ .Values.platform.realm }}/"
username: "kcadmin"
realm: {{ .Values.platform.realm | quote }}
connection:
host: "{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}"
baseUrl: "http://ums-keycloak:8080"
credentialSecret:
name: "ums-opendesk-keycloak-credentials"
key: "admin_password"
ics_client:
clientSecret: {{ .Values.secrets.keycloak.clientSecret.intercom | quote }}
credentialSecret:
key: "ics_secret"
podSecurityContext:
enabled: true
fsGroup: 1000

View File

@@ -165,7 +165,13 @@ nubusGuardian:
provisioning:
enabled: false
config:
nubusBaseUrl: {{ printf "https://%s.%s" .Values.global.hosts.nubus .Values.global.domain }}
keycloak:
realm: {{ .Values.platform.realm | quote }}
username: "kcadmin"
connection:
host: "{{ .Values.global.hosts.keycloak }}.{{ .Values.global.domain }}"
baseUrl: "http://ums-keycloak:8080"
credentialSecret:
name: "ums-opendesk-keycloak-credentials"
key: "admin_password"

View File

@@ -389,60 +389,6 @@ config:
backchannel.logout.session.required: false
defaultClientScopes:
- "opendesk-dovecot-scope"
- name: "opendesk-intercom"
clientId: "opendesk-intercom"
protocol: "openid-connect"
clientAuthenticatorType: "client-secret"
secret: {{ .Values.secrets.keycloak.clientSecret.intercom | quote }}
redirectUris:
- "https://{{ .Values.global.hosts.intercomService }}.{{ .Values.global.domain }}/callback"
consentRequired: false
frontchannelLogout: false
publicClient: false
authorizationServicesEnabled: false
attributes:
backchannel.logout.session.required: true
backchannel.logout.revoke.offline.tokens: true
backchannel.logout.url: "https://{{ .Values.global.hosts.intercomService }}.{{ .Values.global.domain }}/backchannel-logout"
protocolMappers:
- name: "intercom-audience"
protocol: "openid-connect"
protocolMapper: "oidc-audience-mapper"
consentRequired: false
config:
included.client.audience: "opendesk-intercom"
id.token.claim: false
access.token.claim: true
# temporary additional claim while entryuuid is a hardcoded attribute in IntercomService and we cannot set
# it to `opendesk_useruuid` standard claim. For reference:
# https://github.com/univention/intercom-service/blob/cd819b6ced6433e532e74a8878943d05412c1416/intercom/app.js#L89
- name: "entryuuid_temp"
protocol: "openid-connect"
protocolMapper: "oidc-usermodel-attribute-mapper"
consentRequired: false
config:
userinfo.token.claim: true
user.attribute: "entryUUID"
id.token.claim: true
access.token.claim: true
claim.name: "entryuuid"
jsonType.label: "String"
# temporary additional claim while phoenixusername is a hardcoded attribute in IntercomService and we cannot
# set it to `opendesk_username` standard claim. For reference:
# https://github.com/univention/intercom-service/blob/cd819b6ced6433e532e74a8878943d05412c1416/intercom/routes/navigation.js#L27
- name: "phoenixusername_temp"
protocol: "openid-connect"
protocolMapper: "oidc-usermodel-attribute-mapper"
consentRequired: false
config:
userinfo.token.claim: true
user.attribute: "uid"
id.token.claim: true
access.token.claim: true
claim.name: "phoenixusername"
jsonType.label: "String"
defaultClientScopes:
- "offline_access"
- name: "opendesk-jitsi"
clientId: "opendesk-jitsi"
protocol: "openid-connect"

View File

@@ -122,8 +122,8 @@ charts:
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/charts-mirror"
name: "intercom-service"
version: "2.0.1"
verify: true
version: "2.1.1"
verify: false
jitsi:
# providerCategory: "Platform"
# providerResponsible: "openDesk"
@@ -274,8 +274,9 @@ charts:
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/platform-development/charts/opendesk-keycloak-bootstrap"
name: "opendesk-keycloak-bootstrap"
version: "2.1.1"
verify: true
version: "2.2.0-jtorres-univention-keycloak-clients"
verify: false
# TODO: change to the final version during MR to develop
openproject:
# providerCategory: "Supplier"
# providerResponsible: "openProject"

View File

@@ -75,13 +75,13 @@ images:
intercom:
# providerCategory: "Supplier"
# providerResponsible: "Univention"
# upstreamRegistry: "https://quay.io"
# upstreamRepository: "univention/intercom-service"
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)$'
# upstreamMirrorStartFrom: ["1", "6"]
# upstreamRegistry: "https://artifacts.software-univention.de"
# upstreamRepository: "nubus/images/intercom-service"
# upstreamMirrorTagFilterRegEx: '^(\d+)\.(\d+)\.(\d+)$'
# upstreamMirrorStartFrom: ["2", "1", "0"]
registry: "registry.opencode.de"
repository: "bmi/opendesk/components/supplier/univention/images-mirror/intercom-service"
tag: "1.6@sha256:f32c1e52fa132e9dc6973e9f8ed36a98c5c3e0bcd51c60f9a683e7e528dd2306"
tag: "2.1.1@sha256:889b82681883b2cec1267a744f135f5b25a716de6ca584f7565ccd118b6f6c4f"
jibri:
# providerCategory: "Supplier"
# providerResponsible: "Nordeck"