À propos de SSO SAML
L'authentification unique SAML vous permet de contrôler et de sécuriser de manière centralisée l'accès à votre instance GitHub Enterprise Server à partir de votre fournisseur d'identité SAML. Quand un utilisateur non authentifié accède à votre instance GitHub Enterprise Server dans un navigateur, GitHub Enterprise Server redirige l'utilisateur vers votre fournisseur d'identité SAML pour l'authentification. Une fois que l'utilisateur s'est authentifié avec un compte sur le fournisseur d'identité, celui-ci redirige l'utilisateur vers votre instance GitHub Enterprise Server. GitHub Enterprise Server valide la réponse de votre IdP, puis accorde l'accès à l'utilisateur.
Une fois qu'un utilisateur s'est authentifié correctement sur votre fournisseur d'identité, la session SAML de l'utilisateur pour votre instance GitHub Enterprise Server est active dans le navigateur pendant 24 heures. Après 24 heures, l'utilisateur doit s'authentifier à nouveau auprès de votre fournisseur d'identité.
Avec le provisionnement JIT, si vous supprimez un utilisateur de votre IdP, vous devez également suspendre manuellement le compte de l’utilisateur sur votre instance GitHub Enterprise Server. À défaut, le propriétaire du compte pourra toujours s’authentifier avec des jetons d’accès ou des clés SSH. Pour plus d’informations, consultez « Suspension et réhabilitation d’utilisateurs ».
Fournisseurs d'identité pris en charge
GitHub Enterprise Server prend en charge l’authentification unique (SSO) SAML avec des fournisseurs d’identité qui implémentent la norme SAML 2.0. Pour plus d’informations, consultez le Wiki SAML sur le site web OASIS.
GitHub prend officiellement en charge et teste en interne les fournisseurs d’identité suivants.
- Microsoft services de fédération Active Directory (AD FS)
- Microsoft Entra ID (actuellement appelé Azure AD)
- Okta
- OneLogin
- PingOne
- Shibboleth
Pour plus d’informations sur la connexion d'Entra ID à votre entreprise, consultez Tutoriel : intégration de la SSO Microsoft Entra à GitHub Enterprise Server dans Microsoft Docs.
Considérations relatives aux noms d'utilisateur avec SAML
GitHub Enterprise Server normalise une valeur de votre fournisseur d'authentification externe pour déterminer le nom d'utilisateur pour chaque nouveau compte personnel sur votre instance GitHub Enterprise Server. Pour plus d'informations, consultez « Considérations relatives au nom d'utilisateur pour une authentification externe ».
Configuration d'une SSO SAML
Vous pouvez activer ou désactiver l'authentification SAML pour votre instance GitHub Enterprise Server ou modifier une configuration existante. Vous pouvez afficher et modifier les paramètres d'authentification pour GitHub Enterprise Server dans la Management Console. Pour plus d'informations, consultez « Géstion de votre instance à partir de l’IU WEB. ».
Remarque : GitHub vous recommande vivement de vérifier toute nouvelle configuration de l’authentification dans un environnement intermédiaire. Une configuration incorrecte peut entraîner un temps d’arrêt de votre instance GitHub Enterprise Server. Pour plus d’informations, consultez « Configuration d’une instance de préproduction ».
-
À partir d’un compte d’administration sur GitHub Enterprise Server, cliquez sur en haut à droite de n’importe quelle page.
-
Si vous ne figurez pas déjà sur la page « Administrateur du site », dans le coin supérieur gauche, cliquez sur Administrateur du site.
-
Dans la barre latérale « Administrateur de site », cliquez sur Management Console .
-
Dans la barre latérale « Paramètres », cliquez sur Authentification.
-
Sous « Authentification », sélectionnez SAML.
-
Pour autoriser les personnes sans compte sur votre système d’authentification externe à se connecter avec l’authentification intégrée, sélectionnez Autoriser l’authentification intégrée. Pour plus d’informations, consultez « Autorisation d’authentification intégrée pour les utilisateurs extérieurs à votre fournisseur ».
-
Vous pouvez éventuellement activer l'authentification SSO de réponse non sollicitée en sélectionnant Authentification unique initiée par le fournisseur d'identité. Par défaut, GitHub Enterprise Server répond à une demande non sollicitée initiée par un fournisseur d'identité par un
AuthnRequest
retourné à ce dernier.Remarque : Nous vous recommandons de laisser cette valeur non sélectionnée. Cette fonctionnalité doit être activée uniquement dans le rare cas où votre implémentation SAML ne prend pas en charge l'authentification unique initiée par le fournisseur de services, et quand cela vous a été conseillé par le Support GitHub Enterprise.
-
Sélectionnez éventuellement Désactiver la rétrogradation/promotion de l'administrateur si vous ne souhaitez pas que votre fournisseur SAML détermine les droits d'administrateur pour les utilisateurs de votre instance GitHub Enterprise Server
-
Si vous le souhaitez, pour autoriser votre instance GitHub Enterprise Server à recevoir des assertions chiffrées de votre IdP SAML, sélectionnez Exiger des assertions chiffrées.
Vous devez vérifier que votre IdP prend en charge les assertions chiffrées et que les méthodes de chiffrement et de transport de clés dans la console de gestion correspondent aux valeurs configurées au niveau de votre IdP. Vous devez également fournir le certificat public de votre instance GitHub Enterprise Server à votre IdP. Pour plus d'informations, consultez « Activation des assertions chiffrées ».
-
Sous « URL de l'authentification unique », tapez le point de terminaison HTTP ou HTTPS au niveau de votre IdP pour les demandes d'authentification unique. Cette valeur est fournie par la configuration de votre IdP. Si l'hôte est disponible uniquement à partir de votre réseau interne, vous devez peut-être configurer votre instance GitHub Enterprise Server pour utiliser des serveurs de noms internes.
-
Dans le champ Émetteur, tapez éventuellement le nom de votre émetteur SAML. Cette action permet de vérifier l'authenticité des messages envoyés à votre instance GitHub Enterprise Server.
-
Sélectionnez Méthode de signature et Méthode de synthèse, dans les menus déroulants, puis cliquez sur l'algorithme de hachage utilisé par votre émetteur SAML pour vérifier l'intégrité des requêtes provenant de votre instance GitHub Enterprise Server.
-
Sélectionnez le menu déroulant Format de l'identificateur de nom, puis cliquez sur un format.
-
Sous « Certificat de vérification », cliquez sur Choisir un fichier et choisissez un certificat pour valider les réponses SAML de l'IdP.
-
Sous « Attributs utilisateur », modifiez les noms d'attributs SAML pour les faire correspondre à votre IdP si nécessaire, ou acceptez les noms par défaut.