Skip to main content
Nous publions des mises à jour fréquentes de notre documentation, et la traduction de cette page peut encore être en cours. Pour obtenir les informations les plus actuelles, consultez la documentation anglaise.

Cette version de GitHub Enterprise a été abandonnée le 2023-03-15. Aucune publication de correctifs n’est effectuée, même pour les problèmes de sécurité critiques. Pour de meilleures performances, une sécurité améliorée et de nouvelles fonctionnalités, effectuez une mise à niveau vers la dernière version de GitHub Enterprise. Pour obtenir de l’aide sur la mise à niveau, contactez le support GitHub Enterprise.

Résolution des problèmes d’authentification SAML

Si vous utilisez l’authentification unique SAML et que les utilisateurs ne parviennent pas à s’authentifier pour accéder à votre instance GitHub Enterprise Server, vous pouvez résoudre le problème.

À propos des problèmes liés à l’authentification SAML

GitHub Enterprise Server journalise les messages d’erreur en cas d’échec d’authentification SAML dans le journal d’authentification à l’emplacement /var/log/github/auth.log. Vous pouvez passer en revue les réponses dans ce fichier journal, et vous pouvez également configurer une journalisation plus détaillée.

Pour plus d’informations sur les exigences de réponse SAML, consultez « Référence de configuration SAML ».

Configuration du débogage SAML

Vous pouvez configurer GitHub Enterprise Server pour écrire des journaux de débogage détaillés dans /var/log/github/auth.log pour chaque tentative d’authentification SAML. Ce sortie supplémentaire vous aidera peut-être à résoudre les tentatives d’authentification avortées.

Avertissements :

  • N’activez le débogage SAML que de façon temporaire et désactivez-le de suite après avoir résolu les problèmes. Si vous laissez le débogage activé, la taille de votre journal peut augmenter beaucoup plus vite que la normale, ce qui peut avoir un impact négatif sur le niveau de performance de GitHub Enterprise Server.
  • Testez les nouveaux paramètres d’authentification pour votre instance GitHub Enterprise Server dans un environnement de préproduction avant de les appliquer dans votre environnement de production. Pour plus d’informations, consultez « Configuration d’une instance de préproduction ».
  1. Dans le coin supérieur droit de GitHub Enterprise Server, cliquez sur votre photo de profil, puis sur Paramètres d’entreprise. « Paramètres d’entreprise » dans le menu déroulant de la photo de profil sur GitHub Enterprise Server 1. Dans la barre latérale du compte d’entreprise, cliquez sur Stratégies. 1. Sous Stratégies, cliquez sur Options. Onglet Options sur la barre latérale des paramètres du compte d’entreprise

  2. Sous « Débogage SAML », sélectionnez la liste déroulante, puis cliquez sur Activé.

    Capture d’écran de la liste déroulante permettant d’activer le débogage SAML

  3. Essayez de vous connecter à votre instance GitHub Enterprise Server via votre IdP SAML.

  4. Passez en revue la sortie de débogage dans /var/log/github/auth.log sur votre instance GitHub Enterprise Server.

  5. Une fois la résolution des problèmes terminée, sélectionnez la liste déroulante, puis cliquez sur Désactivé.

    Capture d’écran de la liste déroulante permettant de désactiver le débogage SAML

Décodage des réponses dans auth.log

Certaines sorties dans auth.log peuvent être encodées en Base64. Vous pouvez accéder à l’interpréteur de commandes d’administration et vous servir de l’utilitaire base64 sur votre instance GitHub Enterprise Server. pour décoder ces réponses. Pour plus d’informations, consultez « Accès à l’interpréteur de commandes d’administration (SSH) ».

$ base64 --decode ENCODED_OUTPUT

Erreur : « Un autre utilisateur est déjà propriétaire du compte »

Quand un utilisateur se connecte à votre instance GitHub Enterprise Server. pour la première fois avec l’authentification SAML, GitHub Enterprise Server crée un compte d’utilisateur sur l’instance et mappe le NameID SAML au compte.

Quand l’utilisateur se connecte à nouveau, GitHub Enterprise Server compare le mappage du NameID du compte à la réponse de l’IdP. Si le NameID présent dans la réponse de l’IdP ne correspond plus au NameID que GitHub Enterprise Server attend pour l’utilisateur, la connexion échoue. L’utilisateur obtient le message suivant.

Un autre utilisateur est déjà propriétaire du compte. Demandez à votre administrateur de vérifier le journal d’authentification.

Le message indique généralement que le nom d’utilisateur ou l’adresse e-mail de la personne a changé au niveau de l’IdP. Vérifiez que le mappage du NameID du compte d’utilisateur sur GitHub Enterprise Server correspond au NameID de l’utilisateur au niveau de votre IdP. Pour plus d’informations, consultez « Mise à jour du paramètre NameID SAML d’un utilisateur ».

Erreur : Le destinataire dans la réponse SAML était absent ou non valide

Si le Recipient ne correspond pas à l’URL ACS de votre instance GitHub Enterprise Server, l’un des deux messages d’erreur suivants s’affiche dans le journal d’authentification quand un utilisateur tente de s’authentifier.

Recipient in the SAML response must not be blank.
Recipient in the SAML response was not valid.

Veillez à définir la valeur de Recipient au niveau de votre IdP sur l’URL ACS complète pour votre instance GitHub Enterprise Server. Par exemple : https://ghe.corp.example.com/saml/consume.

Erreur : « La réponse SAML n’est pas signée ou a été modifiée »

Si votre IdP ne signe pas la réponse SAML ou que la signature ne correspond pas au contenu, le message d’erreur suivant s’affiche dans le journal d’authentification.

SAML Response is not signed or has been modified.

Veillez à configurer les assertions signées pour l’application GitHub Enterprise Server au niveau de votre IdP.

Erreur : « L’audience n’est pas valide » ou « Aucune assertion trouvée »

Si la valeur de Audience dans la réponse de l’IdP est vide ou incorrecte, le message d’erreur suivant s’affiche dans le journal d’authentification.

Audience is invalid. Audience attribute does not match https://<em>YOUR-INSTANCE-URL</em>

Veillez à définir la valeur de Audience au niveau de votre IdP sur EntityId pour votre instance GitHub Enterprise Server., qui est l’URL complète de votre instance. Par exemple : https://ghe.corp.example.com.

Erreur : « L’heure actuelle est antérieure à la condition NotBefore »

Cette erreur peut se produire lorsqu’il y a une trop grande différence de temps entre votre fournisseur d’identité et GitHub Enterprise Server, ce qui arrive souvent avec les fournisseurs d’identité auto-hébergés.

Pour éviter ce problème, nous vous recommandons de faire pointer votre appareil vers la même source NTP (Network Time Protocol) que votre fournisseur d’identité, si possible. Si vous rencontrez cette erreur, assurez-vous que l’heure de votre appliance est correctement synchronisée avec votre serveur NTP.

Si vous utilisez ADFS comme fournisseur d’identité, définissez également NotBeforeSkew dans ADFS sur 1 minute pour GitHub. Si NotBeforeSkew est défini sur 0, même les différences de temps très petites, y compris de l’ordre de la milliseconde, peuvent entraîner des problèmes d’authentification.