Skip to main content
Skip to content

Autorisation des informations d’identification pour l’authentification unique avec une application GitHub

Autorisez les informations d’identification pour plusieurs organisations en autorisant une entreprise installée GitHub App à gérer les autorisations d’authentification unique (SSO).

Qui peut utiliser cette fonctionnalité ?

Enterprise owners and users with the "Manage enterprise credentials" permission

Concernant l’autorisation des informations d’identification avec un GitHub App

Par défaut, GitHub Apps installé par l’entreprise ne peut pas autoriser les identifiants. Pour réduire le nombre de fois où les membres de l’entreprise doivent autoriser les mêmes informations d’identification pour des organisations individuelles, vous pouvez autoriser une application à autoriser les clés d’authentification SSH existantes personal access tokens (classic) ou vérifiées appartenant à l’utilisateur. Jusqu’à 50 organisations sélectionnées sont autorisées par demande.

Pour autoriser un identifiant pour une seule organisation sans GitHub App, consultez Autorisation d’un jeton d’accès personnel à utiliser avec l’authentification unique ou Autorisation d’une clé SSH pour l’utiliser avec l’authentification unique.

Prerequisites

Pour que l’application puisse autoriser les informations d’identification, les exigences suivantes doivent être remplies :

  • L’entreprise doit utiliser l’authentification unique au niveau de l’entreprise.
  • Le propriétaire des informations d’identification doit être membre de chaque organisation où l’application autorise les informations d’identification.

Création du GitHub App

  1. Inscrivez une nouvelle application. Pour les instructions, consultez Inscription d’une application GitHub. L’application doit :

    • Être détenu par l’entreprise ou par une organisation au sein de l’entreprise.
    • Vous devez disposer d’un accès en écriture à l’autorisation « Identifiants d’entreprise ».
  2. Notez l’ID client de l’application, puis générez et stockez en toute sécurité une clé privée. Consultez « Gestion des clés privées pour les applications GitHub ».

  3. Installez l’application sur votre compte d’entreprise. Consultez « Installer une GitHub App sur votre entreprise ».

  4. Dans l’URL de la page d’installation de l’application, notez l’ID d’installation. L’ID est la chaîne de nombres à la fin de l’URL /enterprises/ENTERPRISE/settings/installations/ID .

Permettre à un GitHub App d’autoriser des identifiants

  1. Accédez à votre entreprise. Par exemple, depuis la page Entreprises sur GitHub.com.

  2. Sous Paramètres, cliquez sur Sécurité de l'authentification.

  3. Sous « Informations d’identification », activez Autoriser GitHub Apps l’autorisation des informations d’identification.

Génération d’un jeton d’accès d’installation

L’application doit utiliser un jeton d’accès d’installation d’entreprise pour authentifier ses demandes d’API. Les jetons d’accès d’installation de l’organisation, les jetons d’accès utilisateur et personal access tokens ne sont pas pris en charge.

Pour générer un jeton d’accès d’installation :

  1. Utilisez l’ID client et la clé privée de l’application pour générer un jeton web JSON (JWT). Consultez « Génération d’un jeton web JSON (JWT) pour une application GitHub ».
  2. Utilisez le JWT et l’ID d’installation d’entreprise pour créer un jeton d’accès d’installation. Consultez « Génération d’un jeton d’accès d’installation pour une application GitHub ».

Le jeton d’accès d’installation hérite des autorisations d’entreprise accordées à l’application, ne peut pas être limité et expire après une heure.

Recherche des identifiants d’authentification

Pour les informations d’identification déjà autorisées pour une organisation de votre entreprise, un propriétaire de l’organisation peut utiliser l’API REST pour obtenir des identificateurs en bloc. Consultez « Points de terminaison d’API REST pour les organisations ».

Dans la réponse, utilisez authorized_credential_id pour un(e) personal access token (classic), ou fingerprint pour une clé SSH. N’utilisez pas credential_id, qui identifie l’autorisation de cet identifiant pour cette organisation.

Ce point de terminaison ne retourne pas d’informations d’identification qui n’ont pas été autorisées pour l’organisation. Pour obtenir un identificateur pour une autre information d’identification, utilisez l’une des méthodes suivantes :

  • Pour personal access token (classic), ouvrez le jeton depuis la page paramètres du jeton. L’ID de jeton est le numéro à la fin de l’URL /settings/tokens/ID . Sinon, si le jeton a été utilisé pour une action enregistrée dans le journal d’audit d’entreprise, un propriétaire d’entreprise peut trouver l’ID dans le champ de l’événement token_id . L’ID est disponible dans le journal d’audit uniquement lorsqu’un événement visible par l’entreprise authentifié avec ce jeton est conservé. Partagez l’ID, et non la valeur du jeton. Pour plus d’informations, consultez « Gestion de vos jetons d’accès personnels » et « Recherche dans le journal d’audit de votre entreprise ».
  • Pour une clé SSH, recherchez l’empreinte digitale SHA-256 pour la clé d’authentification vérifiée appartenant à l’utilisateur. Pour plus d’informations, consultez « Examen de vos clés SSH ».

Autorisation d’un identifiant

Utilisez l’API REST pour autoriser les informations d’identification pour les organisations sélectionnées. Par exemple:

curl --request POST \
  --url "https://api.github.com/enterprises/ENTERPRISE/credential-authorizations" \
  --header "Accept: application/vnd.github+json" \
  --header "Authorization: Bearer INSTALLATION-ACCESS-TOKEN" \
  --header "X-GitHub-Api-Version: 2026-03-10" \
  --data '{
    "credential_id": 12345678,
    "credential_type": "classic_pat",
    "organizations": ["ORGANIZATION-1", "ORGANIZATION-2"]
  }'

Remplacez ENTERPRISE par l’identifiant court de l’entreprise, INSTALLATION-ACCESS-TOKEN par le jeton d’accès à l’installation, et ORGANIZATION-1 et ORGANIZATION-2 par les identifiants courts de l’organisation. Remplacez 12345678 par l’ID du personal access token (classic). Pour autoriser une clé SSH à la place, remplacez 12345678 par l’empreinte SHA-256 de la clé et remplacez classic_pat par ssh_key.

Pour plus d’informations, consultez « Points de terminaison d’API REST pour les autorisations d’informations d’identification d’entreprise ».

Désactivation de l’autorisation des identifiants via GitHub Apps

La désactivation du paramètre empêche les applications de créer de nouvelles autorisations d’informations d’identification. Les autorisations existantes restent actives jusqu’à ce qu’elles soient révoquées, les informations d’identification sont révoquées ou supprimées, ou le propriétaire des informations d’identification perd l’appartenance à l’organisation.

Vous pouvez utiliser la même API REST pour révoquer les autorisations qu’une application créée via la délégation d’entreprise.