Configuration Keycloak
config.json
{
"oidc_providers": {
"keycloak": {
"display_name": "Sign in with keycloak",
"provider_url": "https://keycloak.example.com/realms/master",
"client_id": "***",
"client_secret": "***",
"redirect_url": "https://semaphore.example.com/api/auth/oidc/keycloak/redirect"
}
}
}
Connexion initiée par l'IdP
Pour permettre aux utilisateurs de lancer Semaphore depuis le lanceur d'applications de la console de compte (Account Console) de Keycloak, activez la connexion initiée par l'IdP pour le fournisseur :
config.json
{
"oidc_providers": {
"keycloak": {
"...": "...",
"allow_idp_initiated": true
}
}
}
Ensuite, dans la console d'administration de Keycloak, ouvrez votre client et définissez la Home URL (Keycloak ≥ 19 ; les versions plus anciennes l'appellent Base URL) à :
https://semaphore.example.com/api/auth/oidc/keycloak/initiate
Lorsqu'un utilisateur clique sur l'application dans le lanceur, Keycloak redirige vers cette URL avec le paramètre iss. Semaphore
valide iss par rapport à votre provider_url (l'issuer du realm) et démarre un flux Authorization Code classique.
Issues GitHub associées
- #2308 — Comment désactiver la validation du certificat pour le serveur Keycloak
- #2314 — Option pour désactiver la vérification TLS
- #1496 — Se déconnecter de la session Keycloak lors de la déconnexion de Semaphore
Voir toutes les issues liées à Keycloak →