Passer au contenu
Aucun résultat
  • Mes GPTs
    • Générateur tableau HTML pour vos gpts
  • GPT4Free
  • A télécharger
  • Réalisations
  • Projets
    • Strut
    • TubeList
    • LoveStarter
  • Parrainage
  • Jeux
    • Dés 3D
    • Pile ou Face
  • Ansible
    • Ansible – formater clef SSH pour playbook yaml
    • Ansible Vault – Chiffrement et Déchiffrement
  • Code
    • Monaco Diff Viewer – Comparateur de texte/code
    • Code – Suppression des commentaires
    • Base64 – Encodage et Décodage
    • Code HTML/JS/CSS – Mise en forme
    • Conversion de texte (majuscule, minuscule, camelCase, …)
    • Convertisseur Markdown en HTML
    • Générateur Hash SRI
    • Minification et Unminification
    • URL – Encodage et Décodage
  • Outils
    • Carte Interactive des Rapports de la Cour des Comptes – Explorez la Gestion Publique en France et Outre-Mer avec des GPTs Spécifiques
    • Draw
    • Nmap Viewer
    • Calculatrice scientifique
    • Crontab – Parser
    • Education Nationale – Traitement des politiques d’habilitation
    • Générateur de mot de passe
    • MiFare – UID Converter
    • VNC – Déchiffrement
    • Debian – Générateur sources.list
    • Ubuntu – Générateur Sources.list
    • Polynésie Française – Calculez votre salaire brut/net
  • Nouvelle-Calédonie
    • Status Gouv NC – Suivi des sites Web publics
    • Nouvelle-Calédonie – Le droit calédonien et ses racines culturelles
    • Nouvelle-Calédonie – Calculez votre salaire brut/net
    • Nouvelle-Calédonie – Ouvrir un compte bancaire
PASCAL MIETLICKI

INGÉNIEUR INSA – MASTER IAE/TSM – ADMINISTRATEUR SYSTÈMES ET RÉSEAUX – DÉVELOPPEUR PHP/LARAVEL/IONIC/FLUTTER – ADMINISTRATEUR BUSINESS OBJECTS – ADMINISTRATEUR RANCHER/KUBERNETES – DEVOPS

  • Mes GPTs
    • Générateur tableau HTML pour vos gpts
  • GPT4Free
  • A télécharger
  • Réalisations
  • Projets
    • Strut
    • TubeList
    • LoveStarter
  • Parrainage
  • Jeux
    • Dés 3D
    • Pile ou Face
  • Ansible
    • Ansible – formater clef SSH pour playbook yaml
    • Ansible Vault – Chiffrement et Déchiffrement
  • Code
    • Monaco Diff Viewer – Comparateur de texte/code
    • Code – Suppression des commentaires
    • Base64 – Encodage et Décodage
    • Code HTML/JS/CSS – Mise en forme
    • Conversion de texte (majuscule, minuscule, camelCase, …)
    • Convertisseur Markdown en HTML
    • Générateur Hash SRI
    • Minification et Unminification
    • URL – Encodage et Décodage
  • Outils
    • Carte Interactive des Rapports de la Cour des Comptes – Explorez la Gestion Publique en France et Outre-Mer avec des GPTs Spécifiques
    • Draw
    • Nmap Viewer
    • Calculatrice scientifique
    • Crontab – Parser
    • Education Nationale – Traitement des politiques d’habilitation
    • Générateur de mot de passe
    • MiFare – UID Converter
    • VNC – Déchiffrement
    • Debian – Générateur sources.list
    • Ubuntu – Générateur Sources.list
    • Polynésie Française – Calculez votre salaire brut/net
  • Nouvelle-Calédonie
    • Status Gouv NC – Suivi des sites Web publics
    • Nouvelle-Calédonie – Le droit calédonien et ses racines culturelles
    • Nouvelle-Calédonie – Calculez votre salaire brut/net
    • Nouvelle-Calédonie – Ouvrir un compte bancaire
PASCAL MIETLICKI

INGÉNIEUR INSA – MASTER IAE/TSM – ADMINISTRATEUR SYSTÈMES ET RÉSEAUX – DÉVELOPPEUR PHP/LARAVEL/IONIC/FLUTTER – ADMINISTRATEUR BUSINESS OBJECTS – ADMINISTRATEUR RANCHER/KUBERNETES – DEVOPS

Keycloak – exemple d’une fédération d’identités avec 3 annuaires dont 1 annuaire AD

  • 29 août 2023
  • Sécurité / Réseau, Travaux / Expériences

Table of Contents

  • Introduction
  • Prérequis
  • Étape 1 : Configuration initiale de Keycloak
  • Étape 2 : Configurer les annuaires dans « User Federation »
    • Configuration du premier Oracle Directory Server
      • Modifier les mappers pour le premier Oracle Directory Server
    • Configuration du deuxième Oracle Directory Server
    • Configuration de l’Active Directory
      • Modifier les mappers pour l’Active Directory
  • Mappers – ajout de nouveaux attributs
    • Ajout de nouveaux attributs dans les Mappers pour Oracle Directory Server et Active Directory
      • Étape 1 : Accédez à « User Federation »
      • Étape 2 : Sélectionnez le fournisseur LDAP
      • Étape 3 : Accédez à « Mappers »
      • Étape 4 : Ajoutez un nouveau Mapper
      • Étape 5 : Sauvegardez les changements
      • Étape 6 : (Optionnel) Synchronisez les utilisateurs
      • Étape 7 : Vérifiez l’ajout de l’attribut
  • Exemple pour l’attribut UID
    • Ajout d’un Client Scope pour utiliser l’UID
    • Étape 1 : Accédez à « Client Scopes »
    • Étape 2 : Créez un nouveau Client Scope
    • Étape 3 : Configurez le Mapper
    • Étape 4 : Associez le Client Scope à un client
    • Utilité
    • Impact sur les métadonnées
      • OpenID Connect
      • SAML
  • Conclusion

Introduction

La fédération d’identités permet de rassembler plusieurs sources d’identités en une seule, permettant ainsi aux utilisateurs de s’authentifier et d’accéder à divers services à partir d’un point central. Keycloak est un serveur d’identité et d’accès de source ouverte qui offre des fonctionnalités telles que la gestion des identités, l’authentification unique (SSO), et bien plus encore.

Dans cet article, nous allons aborder comment configurer une fédération d’identités avec Keycloak en intégrant deux annuaires Oracle Directory Server et un annuaire Active Directory (AD). Nous utiliserons le champ « mail » comme identifiant unique pour l’authentification.

Prérequis

  • Installation de Keycloak
  • Deux instances d’Oracle Directory Server
  • Une instance d’Active Directory
  • Connaissance de base en LDAP et SAML

Étape 1 : Configuration initiale de Keycloak

  1. Lancez Keycloak et connectez-vous à la console d’administration.
  2. Créez un nouveau Realm ou utilisez le realm master.

Étape 2 : Configurer les annuaires dans « User Federation »

Configuration du premier Oracle Directory Server

  1. Allez dans User Federation dans le menu de navigation à gauche.
  2. Cliquez sur Add provider et choisissez LDAP.
  3. Remplissez les détails de votre premier Oracle Directory Server.
    • Vendor: Other
    • Connection URL: ldap://odserver1.example.com
    • Port: 389 ou 636 pour LDAPS
    • Users DN: dc=example,dc=com
    • User Object Classes: inetOrgPerson, organizationalPerson

Modifier les mappers pour le premier Oracle Directory Server

  1. Après avoir sauvegardé la configuration, cliquez sur Mappers.
  2. Trouvez le mapper username et cliquez dessus pour le modifier.
  3. Changez le LDAP attribute à mail et assurez-vous que le User Model Attribute est également mis à username.

Configuration du deuxième Oracle Directory Server

Répétez les étapes ci-dessus pour le deuxième Oracle Directory Server, en vous assurant de modifier le Hostname et les autres détails uniques à cette instance.

Configuration de l’Active Directory

  1. Allez dans User Federation et cliquez sur Add provider, puis choisissez LDAP.
  2. Remplissez les détails pour l’annuaire Active Directory.
    • Vendor: Active Directory
    • Connection URL: ldap://ad.example.com
    • Port: 389 ou 636 pour LDAPS
    • Bind type : simple
    • Bind DN: DOMAINE\keycloak.bind
    • Bind credentials : password
    • Users DN : DC=company,DC=com

Modifier les mappers pour l’Active Directory

  1. Cliquez sur Mappers.
  2. Trouvez le mapper, généralement appelé username ou sAMAccountName, et modifiez-le.
  3. Changez le LDAP attribute à mail et assurez-vous que le User Model Attribute est mis à username.

Mappers – ajout de nouveaux attributs

L’ajout de nouveaux attributs dans les mappers est une étape essentielle pour personnaliser la manière dont les attributs des utilisateurs sont mappés entre l’annuaire LDAP/Active Directory et Keycloak.

Ajout de nouveaux attributs dans les Mappers pour Oracle Directory Server et Active Directory

Étape 1 : Accédez à « User Federation »

  1. Connectez-vous à la console d’administration de Keycloak.
  2. Sélectionnez votre Realm et allez dans User Federation.

Étape 2 : Sélectionnez le fournisseur LDAP

  1. Dans la liste des fournisseurs, cliquez sur le fournisseur LDAP que vous avez précédemment configuré (Oracle Directory Server ou Active Directory).

Étape 3 : Accédez à « Mappers »

  1. Après avoir sélectionné le fournisseur, allez dans l’onglet Mappers.

Étape 4 : Ajoutez un nouveau Mapper

  1. Cliquez sur Create pour ajouter un nouveau mapper.
  2. Remplissez les détails nécessaires :
    • Name: Nom unique pour identifier le mapper.
    • Mapper Type: Sélectionnez le type de mapper. Pour des attributs simples, vous pouvez choisir user-attribute-ldap-mapper.
    • LDAP Attribute: Nom de l’attribut dans l’annuaire LDAP/Active Directory.
    • User Model Attribute: Nom de l’attribut dans le modèle d’utilisateur de Keycloak.
    • Read Only: Cochez cette case si l’attribut ne doit pas être modifiable.

Étape 5 : Sauvegardez les changements

  1. Cliquez sur Save pour enregistrer le nouveau mapper.

Étape 6 : (Optionnel) Synchronisez les utilisateurs

Si vous avez déjà des utilisateurs synchronisés, effectuez une nouvelle synchronisation pour appliquer les changements.

Étape 7 : Vérifiez l’ajout de l’attribut

  1. Accédez à Users dans la console d’administration.
  2. Sélectionnez un utilisateur et vérifiez si le nouvel attribut est correctement mappé.

Exemple pour l’attribut UID

Dans mon cas, j’ai eu à ajouter l’attribut uid pour les différents annuaires afin que cela remonte dans les métadonnées.

Cette configuration vous permet de remonter les éléments souhaités au niveau de la fiche utilisateur avec le username qui corresponde bien à l’adresse email ce qui garantit une unicité entre vos différents référentiels, l’adresse email étant censé être unique.

Ajout d’un Client Scope pour utiliser l’UID

Un aspect souvent négligé mais essentiel de cette configuration est l’utilisation de « Client Scopes ». Dans Keycloak, un « Client Scope » est une manière de définir des paramètres communs qui peuvent être partagés entre différents clients (applications). Il s’agit notamment de la manière dont les tokens OIDC (OpenID Connect) ou SAML sont générés, quels rôles ou attributs d’utilisateurs sont inclus dans ces tokens, etc. Nous alons donc ajouter un « Client Scope » qui utilise l’attribut uid pour personnaliser la génération du token pour une application spécifique.

Étape 1 : Accédez à « Client Scopes »

  1. Dans la console d’administration de Keycloak, allez dans Client Scopes.

Étape 2 : Créez un nouveau Client Scope

  1. Cliquez sur Create.
  2. Donnez un nom au Client Scope, par exemple use-uid.
  3. Cliquez sur Save.

Étape 3 : Configurez le Mapper

  1. Après avoir créé le Client Scope, allez dans Mappers.
  2. Cliquez sur Create.
  3. Remplissez les champs comme suit :
    • Name: UID Mapper
    • Mapper Type: User Attribute
    • User Attribute: uid
    • Token Claim Name: uid
    • Claim JSON Type: String
  4. Cliquez sur Save.

Étape 4 : Associez le Client Scope à un client

  1. Allez dans Clients.
  2. Sélectionnez le client qui doit utiliser ce Client Scope.
  3. Allez dans l’onglet Client Scopes.
  4. Dans Available Client Scopes, trouvez UID Mapper et ajoutez-le à Assigned Client Scopes.

Utilité

L’ajout d’un « Client Scope » spécifique devient indispensable si le plugin d’authentification OpenID de votre application s’attend à trouver un attribut uid pour identifier de manière unique chaque utilisateur. Sans cet attribut, le plugin ne serait pas en mesure de correspondre au modèle d’utilisateur attendu, ce qui pourrait entraîner des échecs d’authentification ou des comportements imprévus.

L’utilisation d’un « Client Scope » spécifique dans Keycloak va affecter les métadonnées SAML ou OpenID Connect générées pour l’application cliente. Ces métadonnées sont utilisées pour configurer l’intégration entre l’application cliente et Keycloak. Lorsque vous ajoutez un « Client Scope » qui inclut un attribut spécifique comme l’uid, cet attribut sera inclus dans les tokens générés pour l’application et, par conséquent, dans les métadonnées.

Impact sur les métadonnées

OpenID Connect

Si vous utilisez OpenID Connect, le nouvel attribut uid sera ajouté au token ID généré pour l’application. Les métadonnées OpenID Connect vont inclure des informations sur ce nouvel attribut, en fonction de la manière dont vous configurez les scopes et les claims dans Keycloak.

SAML

Pour SAML, l’ajout du nouvel attribut affectera le fichier de métadonnées XML qui est utilisé pour configurer la relation de confiance entre l’application et Keycloak. Le nouvel attribut uid sera ajouté comme un élément d’attribut dans le fichier de métadonnées, indiquant que cet attribut est disponible et peut être utilisé par l’application.

Conclusion

La mise en place d’une fédération d’identités avec Keycloak offre une solution robuste pour centraliser la gestion des identités, en intégrant divers technologies de référentieles d’identité (dans notre exemple : Oracle Directory Servers et Active Directory). L’utilisation de la section « User Federation » de Keycloak et la personnalisation des mappers pour utiliser le champ mail comme identifiant unique sont des étapes clés pour réussir cette intégration. De plus, nous avons exploré comment ajouter de nouveaux attributs aux mappers pour personnaliser davantage l’intégration.

Ces configurations permettent non seulement une authentification cohérente à travers divers services, mais elles offrent également une grande flexibilité pour gérer des attributs et des rôles spécifiques aux utilisateurs. Ainsi, les administrateurs peuvent bénéficier d’une gestion centralisée tout en fournissant une expérience utilisateur transparente.

En suivant ces étapes, vous aurez une configuration robuste et flexible qui peut s’adapter à des besoins divers et complexes en matière de gestion des identités.

Partager :

  • Cliquer pour partager sur X(ouvre dans une nouvelle fenêtre) X
  • Cliquez pour partager sur Facebook(ouvre dans une nouvelle fenêtre) Facebook
  • Cliquer pour imprimer(ouvre dans une nouvelle fenêtre) Imprimer
  • Cliquer pour envoyer un lien par e-mail à un ami(ouvre dans une nouvelle fenêtre) E-mail
  • Cliquez pour partager sur LinkedIn(ouvre dans une nouvelle fenêtre) LinkedIn
  • Cliquez pour partager sur Reddit(ouvre dans une nouvelle fenêtre) Reddit
  • Cliquez pour partager sur Tumblr(ouvre dans une nouvelle fenêtre) Tumblr
  • Cliquez pour partager sur Pinterest(ouvre dans une nouvelle fenêtre) Pinterest
  • Cliquez pour partager sur Pocket(ouvre dans une nouvelle fenêtre) Pocket
  • Cliquez pour partager sur Telegram(ouvre dans une nouvelle fenêtre) Telegram
  • Cliquez pour partager sur WhatsApp(ouvre dans une nouvelle fenêtre) WhatsApp
  • Cliquer pour partager sur Mastodon(ouvre dans une nouvelle fenêtre) Mastodon
  • Cliquer pour partager sur Nextdoor(ouvre dans une nouvelle fenêtre) Nextdoor

J’aime ça :

J’aime chargement…

Articles similaires

Étiquettes
# AD# authentication# client scope# configuration# federation# identite# keycloak# ldap# mapper# metadata# openid# saml# uid
woman in white crew neck shirt with brown and white heart shaped beaded necklace
Article précédent Love Starter - 36 questions pour renforcer votre relation
Article suivant Comparatif des cagnottes en ligne sans frais
person putting coin in a piggy bank
Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Politique relative aux cookies

ServiceAvantagesLien
BinanceProfitez de frais réduits à vie sur vos transactions.Accéder
BoursoramaRecevez jusqu'à 150€ offerts à l'ouverture.Accéder
Crypto.comObtenez 25$ de bonus après inscription. Code : 8qzruhg7uhAccéder
DeBlockRecevez une prime aléatoire de 10€ à 500€.Accéder
FreeBitco.inGagnez des Bitcoins gratuits en jouant à des jeux et en participant à des tirages.Accéder
RevolutObtenez une carte gratuite et 20€ après activation.Accéder

Ponctuel
Mensuellement

Faire un don ponctuel

Faire un don mensuel

Choisir un montant

€2,00
€5,00
€10,00
€2,00
€5,00
€10,00

Ou saisir un montant personnalisé

€

Un grand merci pour votre don ! Vous venez de sponsoriser ma prochaine insomnie créative !

Merci pour votre don mensuel ! Vous venez de me propulser du statut de blogueur solitaire à celui de créateur soutenu par une légende : vous !

Faire un donFaire un don mensuel

ARTICLES EN VOGUE

  • MAS: La Solution Ultime pour l'Activation de Windows et Office par massgrave.dev
    MAS: La Solution Ultime pour l'Activation de Windows et Office par massgrave.dev
  • Comment dupliquer son badge d'immeuble avec un smartphone
    Comment dupliquer son badge d'immeuble avec un smartphone
  • Polynésie Française - Calculez votre salaire brut/net
    Polynésie Française - Calculez votre salaire brut/net
  • RDP Wrapper - Un Terminal Server (TSE) Gratuit pour Windows
    RDP Wrapper - Un Terminal Server (TSE) Gratuit pour Windows
  • Top Applications Anti-Gaspillage Alimentaire : Alternatives à Too Good To Go pour Réduire vos Déchets et Économiser
    Top Applications Anti-Gaspillage Alimentaire : Alternatives à Too Good To Go pour Réduire vos Déchets et Économiser

ARTICLES SIMILAIRES

  • Keycloak – configuration et usagelow angle view of lighting equipment on shelf
  • Keycloak – installation sur une base externenew contact directory on flat screen computer screen
  • PacketFence : La Meilleure Solution Open Source pour la Gestion des Accès Réseau (NAC)

CATÉGORIES

  • Android
  • Bons plans
  • Business Objects
  • Code
  • Déploiement
  • Développement
  • Développement personnel
  • Divers
  • Docker
  • Domotique
  • Droit
  • Education
  • Energie
  • Formations
  • GED
  • Impôts
  • Intelligence Artificielle
  • Kubernetes
  • Linux
  • Logiciels libres
  • Mac
  • Manuels
  • Messagerie
  • Nouvelle-Calédonie
  • Outils
  • Projets
  • Rancher
  • Rapports
  • Retrogaming
  • Sciences sociales
  • Sécurité / Réseau
  • Travaux / Expériences
  • Tutoriel
  • Vie pratique
  • Windows

STATISTIQUES

  • 146 023 visites
  • LinkedIn
  • Facebook
  • Instagram
  • Twitter
  • Amazon
  • Spotify

Publications similaires

🔐 Gérer une infrastructure de certificats avec Windows Server : CA, GPO et bonnes pratiques

  • 10 mai 2025

Déployez facilement l’IA dans votre entreprise : OpenWebUI + Ollama sur Kubernetes avec ArgoCD

  • 29 avril 2025

Comment Modifier Votre Signature Outlook en HTML

  • 25 avril 2025

ARTICLES RÉCENTS

  • 🔐 Gérer une infrastructure de certificats avec Windows Server : CA, GPO et bonnes pratiques
  • 🎯 Comment faire de la reconnaissance de texte sur une capture d’écran sous Windows 11
  • Déployez facilement l’IA dans votre entreprise : OpenWebUI + Ollama sur Kubernetes avec ArgoCD
  • Comment Modifier Votre Signature Outlook en HTML
  • Activer l’authentification LDAP (Active Directory) dans SAP BusinessObjects BI 4.x
  • 🔐 Renouveler le certificat SSL de PaperCut MF : guide complet et à jour (2025)
  • Cursor vs Windsurf : quel éditeur de code IA choisir en 2025 ?
  • Erreur OpenWebStart avec Apache POI et fichier Excel

À TÉLÉCHARGER

  • BDD pour la gestion d'un parc de véhicule (406867 téléchargements )
  • Calcul d'itinéraires grâce à la théorie des graphes (391297 téléchargements )
  • Le manuel de l'administrateur système sous Linux (370895 téléchargements )
  • Assurer la sécurité des réseaux (368469 téléchargements )
  • Tutoriel sur Thunderbird (355936 téléchargements )
  • Base de connaissances sur Business Objects (338234 téléchargements )
  • Etude de marché : personnes âgées dépendantes (336303 téléchargements )
  • Initiation à l'informatique sous Windows (315092 téléchargements )

administration réseau administration système android apache API auto-hébergement automatisation compatibilité confidentialité configuration configuration réseau devops Docker Docker Compose déploiement gestion des fichiers gestion des ressources gestion des utilisateurs infrastructure IT installation Intelligence Artificielle interface utilisateur intégration kubernetes ldap Linux Nouvelle-Calédonie open-source Open source outils pare-feu performance personnalisation protection des données rancher reverse proxy réseau ssh ssl sécurité sécurité informatique sécurité réseau tools Tutoriel Windows

Méta

  • Connexion
  • Flux des publications
  • Flux des commentaires
  • Site de WordPress-FR

Flux RSS

Copyright © 2025 - Pascal MIETLICKI. All rights reserved.

💎 Boostez vos finances avec ces offres exclusives ! 🚀

Profitez des meilleurs avantages avec ces offres de parrainage :

ServiceAvantagesLien
BinanceProfitez de frais réduits à vie sur vos transactions.Accéder
BoursoramaRecevez jusqu'à 150€ offerts à l'ouverture.Accéder
Crypto.comObtenez 25$ de bonus après inscription. Code : 8qzruhg7uhAccéder
DeBlockRecevez une prime aléatoire de 10€ à 500€.Accéder
FreeBitco.inGagnez des Bitcoins gratuits en jouant à des jeux et en participant à des tirages.Accéder
RevolutObtenez une carte gratuite et 20€ après activation.Accéder
 

Chargement des commentaires…
 

    %d