openID-Connect SSO

open3A unterstützt mit dem LDAP-Plugin (ab Version 4.3) SSO (Single-Sign-On) per openID-Connect. Die Authentifizierung erfolgt dabei zum Beispiel über die Software keycloak und den Apache-Webserver mit dem Modul mod_auth_openidc.

Folgende Apache-Konfiguration kann dafür genutzt werden:

LimitRequestFieldSize 16384
OIDCStateMaxNumberOfCookies 7 true
OIDCProviderMetadataURL https://…/openid-configuration
OIDCRedirectURI https://…/redirect_uri
OIDCClientID rundeck
OIDCClientSecret XXX
OIDCCryptoPassphrase XXXX
OIDCScope "openid profile email"
OIDCRefreshAccessTokenBeforeExpiry 60
OIDCJWKSRefreshInterval 3600
OIDCRemoteUserClaim email
RewriteEngine On RewriteRule ^redirect_uri$ / [R=302,L] ProxyPreserveHost On <Location "/logout"> AuthType openid-connect Require valid-user OIDCUnAuthAction auth # Clear the local session UnsetEnv OIDC_CLAIM_sub UnsetEnv OIDC_CLAIM_session_state UnsetEnv OIDC_CLAIM_id_token UnsetEnv OIDC_CLAIM_groups UnsetEnv OIDC_access_token # Remove OIDC session cookies Header always set Set-Cookie "mod_auth_openidc_session=; Max-Age=0; Path=/; HttpOnly; Secure" # Redirect to Keycloak's logout endpoint RewriteEngine on RedirectMatch /logout https://…/protocol/openid-connect/logout </Location>
<Location /> SSLRequireSSL SSLOptions +StdEnvVars AuthType openid-connect Require valid-user RequestHeader set "X-Forwarded-Username" %{REMOTE_USER}s RequestHeader set "X-Forwarded-Roles" %{OIDC_CLAIM_groups}e

</Location>

Verwenden Sie dann für die Authentifizierung die Adresse https://URLZurOpen3A-Installation/plugins/LDAP/OIDC.php

Diese Seite führt die Anmeldung über die Umgebungsvariablen durch und leitet auf die Anwendung weiter.