Skip to main content

Résolution des problèmes d’authentification GitHub Copilot CLI

Diagnostiquer les échecs d’authentification lors de la connexion à Copilot CLI.

Erreurs d’authentification

Si vous rencontrez des erreurs d’authentification, utilisez le tableau ci-dessous pour identifier la cause et la résolution.

ProblèmeLa causeRéparerPlus d’informations
Aucune information d’authentification trouvéeAucune information d’identification stockéeexécuter copilot login.
          [Aucune information d’authentification trouvée](#no-authentication-information-found)       |

| 401 Non autorisé | Jeton révoqué ou autorisations insuffisantes | Générer un jeton avec des autorisations | Jeton expiré ou révoqué | | Token (classic) rejeté | Token (classic) (ghp_) | Utiliser un personal access token à granularité fine | Token (classic) rejeté | | 403 Interdit ou stratégie refusée | Copilot licence ou politique d'entreprise ou d'organisation | Vérifier les paramètres d’abonnement et d’organisation | Accès refusé | | Trousseau indisponible | Trousseau de clés système manquant | Installer libsecret ou accepter du texte en clair | Échec de l’accès au trousseau | | Compte incorrect | Plusieurs comptes ou remplacement via variable d’environnement | Vérifiez les variables d'environnement, utilisez /user switch | Compte incorrect |

Aucune information d’authentification trouvée

Copilot CLI affiche l’erreur suivante :

Error: No authentication information found
Copilot can be authenticated with GitHub using an OAuth Token or a Fine-Grained Personal Access Token

La cause

Aucun identifiant n’existe dans les emplacements vérifiés.

Réparer

Utilisez les étapes suivantes pour rechercher où l’authentification est manquante et restaurer l’accès.

Vérifier l’état de votre authentification

Bash
gh auth status

Si vous voyez un message indiquant que vous n’êtes pas connecté, connectez-vous avec gh auth login ou utilisez le flux OAuth avec copilot login.

Vérifier si une variable d’environnement d’authentification est définie

Si vous utilisez une variable d’environnement, vérifiez si la variable d’environnement COPILOT_GITHUB_TOKEN, GH_TOKEN, ou GITHUB_TOKEN est définie :

Bash
echo $COPILOT_GITHUB_TOKEN

Si la commande n’affiche rien, la variable n’est pas définie. Définissez la variable à un jeton valide. Pour générer un jeton, consultez Authentification de GitHub Copilot CLI.

Bash
 export $COPILOT_GITHUB_TOKEN=PERSONAL_ACCESS_TOKEN

trousseau macOS

Bash
security find-generic-password -s copilot-cli

Si aucun élément n’est trouvé, authentifiez-vous à nouveau avec /login ou copilot login pour en créer un. Si un élément est trouvé mais que l’authentification échoue toujours, supprimez les informations d’identification enregistrées, puis authentifiez-vous à nouveau avec /login ou copilot login:

Bash
  security delete-generic-password -s copilot-cli

Jeton expiré ou révoqué

Copilot CLI affiche l’erreur suivante :

Error: Authentication failed

Your GitHub token may be invalid, expired, or lacking the required permissions.

To resolve this, try the following:
  • Start 'copilot' and run the '${LOGIN_COMMAND}' command to re-authenticate
  • If using a Fine-Grained PAT, ensure it has the 'Copilot Requests' permission enabled
  • If using COPILOT_GITHUB_TOKEN, GH_TOKEN or GITHUB_TOKEN environment variable, verify the token is valid and not expired
  • Run 'gh auth status' to check your current authentication status

La cause

Le jeton a été révoqué, a expiré ou a été créé sans les autorisations requises.

Réparer

Passez en revue l’état et les autorisations du jeton sur GitHub. Le jeton doit disposer de l’autorisation Copilot Requests . Générez un nouveau jeton avec les autorisations requises si nécessaire.

Token (classic) rejeté

Un jeton commençant par ghp_ est ignoré en mode silencieux et l’interface CLI se comporte comme si aucun jeton n’est défini.

La cause

Les personal access tokens classiques ne sont pas supportées par Copilot CLI.

Réparer

Générez un personal access token à granularité fine avec les portées requises.

Accès refusé

Copilot CLI affiche l’une des erreurs suivantes :

Error: Access denied by policy settings

Your Copilot CLI policy setting may be preventing access. This can happen when:
  • Your organization has restricted Copilot access
  • Your Copilot subscription does not include this feature
  • Required policies have not been enabled by your administrator

To resolve this, visit your Copilot settings: 

La cause

Une politique d’organisation bloque GitHub Copilot CLI, ou le compte utilisateur ne dispose pas d’une licence GitHub Copilot.

Réparer

  • Vérifiez que votre compte dispose d’une licence active GitHub Copilot.
  • Demandez à l’administrateur de votre organisation d’activer GitHub Copilot CLI dans la stratégie d’organisation.

Échec de l’accès au trousseau

Lors de la connexion, l’interface en ligne de commande vous indique que le trousseau système n’est pas disponible et vous demande si vous souhaitez stocker les identifiants en clair.

System keychain unavailable. Store token in plaintext config file? (y/N)

La cause

Le trousseau du système n’est pas accessible. Cela peut se produire sur les systèmes Linux sans libsecret, sur des serveurs sans interface graphique ou sur des systèmes présentant un problème d’autorisation.

Réparer

Suivez les étapes de votre système d’exploitation pour restaurer le stockage sécurisé des informations d’identification.

macOS ou Windows

Sur macOS, vérifiez que l’application Keychain Access est disponible et que vous pouvez déverrouiller votre trousseau de connexion. Sur Windows, vérifiez que le Gestionnaire d’informations d’identification est disponible et que vous pouvez accéder au coffre Windows. Si vous ne pouvez pas accéder au gestionnaire d’informations d’identification système, utilisez le stockage en texte clair (si vous y êtes invité) ou authentifiez-vous à l’aide d’un jeton de variable d’environnement, puis réexécutez /login ou copilot login.

Linux

Sur Linux, utilisez le keyring système ou stockez les informations d’identification en texte clair.

  1. Vérifiez si secret-tool est installé.

    Bash
    command -v secret-tool
    
  2. Si secret-tool elle est introuvable ou si la commande de recherche ne retourne aucun résultat, installez libsecret et ses dépendances.

    Bash
    sudo apt sudo apt list libsecret-1-0 libsecret-1-dev libsecret-common gnome-keyring gnome-keyring-pkcs11 seahorse
    
  3. Une fois secret-tool installé, recherchez dans le trousseau une information d’identification enregistrée :

    Bash
    secret-tool search copilot-cli
    

    Si la commande retourne un ou plusieurs résultats, les informations d’identification existent dans le keyring. Exécutez copilot login à nouveau dans le terminal ou /login dans Copilot CLI.

Compte incorrect

L’utilisateur incorrect est authentifié ou le jeton appartient à la mauvaise organisation.

La cause

Plusieurs comptes sont stockés ou une variable d’environnement substitue le jeton stocké.

Réparer

Pour changer de compte, utilisez /user switch à l'invite de commandes CLI ou déconnectez-vous avec /logout et exécutez /login avec le compte approprié.