{"meta":{"title":"Autorisation d’une prébuild à accéder à d’autres dépôts","intro":"Vous pouvez autoriser votre prébuild à accéder à d’autres référentiels GitHub pour qu’il puisse être construit correctement.","product":"Codespaces","breadcrumbs":[{"href":"/fr/codespaces","title":"Codespaces"},{"href":"/fr/codespaces/prebuilding-your-codespaces","title":"Prégénération de vos codespaces"},{"href":"/fr/codespaces/prebuilding-your-codespaces/allowing-a-prebuild-to-access-other-repositories","title":"Autoriser l’accès à des dépôts externes"}],"documentType":"article"},"body":"# Autorisation d’une prébuild à accéder à d’autres dépôts\n\nVous pouvez autoriser votre prébuild à accéder à d’autres référentiels GitHub pour qu’il puisse être construit correctement.\n\nPar défaut, le GitHub Actions flux de travail d’une configuration de prébuild ne peut accéder qu’à son propre contenu de référentiel. Votre projet peut utiliser des ressources supplémentaires, situées ailleurs, pour créer l’environnement de développement.\n\n## Autoriser l’accès en lecture avant compilation aux ressources externes\n\nVous pouvez configurer l’accès en lecture à d’autres GitHub référentiels, avec le même propriétaire de référentiel, en spécifiant des autorisations dans le `devcontainer.json` fichier utilisé par votre configuration de prébuild. Pour plus d’informations, consultez « [Gestion de l’accès à d’autres dépôts dans votre codespace](/fr/codespaces/managing-your-codespaces/managing-repository-access-for-your-codespaces) ».\n\n> \\[!NOTE]\n>\n> * Vous ne pouvez accorder qu'une autorisation d'accès en lecture de cette manière, et le propriétaire du référentiel cible doit être le même que celui du référentiel pour lequel vous créez une préversion. Par exemple, si vous créez une configuration de préversion de `octo-org/octocatrepository`, vous pourrez accorder des autorisations de lecture à d'autres référentiels tels que `octo-org/octodemo`, si cela est spécifié dans le fichier `devcontainer.json`, à condition que vous disposiez vous-même des autorisations.\n> * Vous ne pouvez pas utiliser des caractères génériques pour spécifier des référentiels. Vous devez définir des autorisations pour chaque référentiel auquel vous souhaitez accorder l'accès.\n\nLorsque vous créez ou modifiez une configuration de prébuild pour un fichier `devcontainer.json` qui configure l’accès en lecture à d’autres dépôts avec le même propriétaire de dépôt, vous êtes invité à accorder ces autorisations lorsque vous cliquez sur **Créer** ou **Mettre à jour**. Pour plus d’informations, consultez « [Configuration des prébuilds](/fr/codespaces/prebuilding-your-codespaces/configuring-prebuilds#configuring-prebuilds) ».\n\n## Autoriser l’accès en écriture avant compilation aux ressources externes\n\nSi votre projet nécessite un accès en écriture aux ressources ou si les ressources externes résident dans un référentiel avec un propriétaire différent du référentiel pour lequel vous créez une configuration de prébuild, vous pouvez utiliser un personal access token pour accorder cet accès.\n\nVous devrez créer un nouveau compte personnel, puis utiliser ce compte pour créer un personal access token (classic) avec les étendues appropriées.\n\n1. Créez un compte personnel sur GitHub.\n\n   > \\[!WARNING]\n   > Bien que vous puissiez générer le personal access token (classic) à l’aide de votre compte personnel existant, nous vous recommandons vivement de créer un nouveau compte qui a accès uniquement aux référentiels cibles nécessaires à votre scénario. En effet, l’autorisation `repository` du jeton d’accès octroie un accès à tous les dépôts auxquels le compte a accès. Pour plus d’informations, consultez « [Création d’un compte sur GitHub](/fr/account-and-profile/how-tos/account-management/creating-an-account-on-github) » et « [Informations de référence sur l’utilisation sécurisée](/fr/actions/reference/security/secure-use) ».\n\n2. Octroyez au nouveau compte un accès en lecture aux dépôts nécessaires. Pour plus d’informations, consultez « [Gestion de l’accès d’une personne à un dépôt d’organisation](/fr/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/managing-an-individuals-access-to-an-organization-repository) ».\n\n3. Une fois connecté au nouveau compte, créez un personal access token (classic) avec l'étendue `repo`. Si nécessaire, si la préconstruction doit télécharger des paquets depuis GitHubContainer registry, sélectionnez également la portée `read:packages`. Pour plus d’informations, consultez « [Gestion de vos jetons d’accès personnels](/fr/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens) ».\n\n   ![Capture d’écran des options de configuration « Sélectionner les étendues » pour un personal access token (classic), avec les étendues « référentiel » et « read:packages » sélectionnées.](/assets/images/help/codespaces/prebuilds-select-scopes.png)\n\n   Si la préconstruction utilise un package provenant de GitHubContainer registry, vous devrez soit accorder au nouveau compte l’accès à ce package, soit configurer le package pour qu’il hérite des autorisations d’accès du dépôt que vous êtes en train de préconstruire. Pour plus d’informations, consultez « [Configuration du contrôle d’accès et de la visibilité d’un package](/fr/packages/learn-github-packages/configuring-a-packages-access-control-and-visibility) ».\n\n4. Copiez la chaîne du jeton. Vous l’affecterez à un Codespaces secret de dépôt.\n\n5. Reconnectez-vous au compte qui dispose d’un accès administrateur au dépôt.\n\n6. Dans le dépôt pour lequel vous souhaitez créer des prébuilds GitHub Codespaces, créez un nouveau secret de dépôt Codespaces appelé `CODESPACES_PREBUILD_TOKEN`, en lui attribuant la valeur du jeton que vous avez créé et copié. Pour plus d’informations, consultez « [Gestion des secrets d’environnement de développement pour votre référentiel ou votre organisation](/fr/codespaces/managing-codespaces-for-your-organization/managing-development-environment-secrets-for-your-repository-or-organization#adding-secrets-for-a-repository) ».\n\nLe personal access token sera utilisé pour toutes les précompilations ultérieures créées pour votre référentiel. Contrairement aux autres secrets du dépôt Codespaces, le secret `CODESPACES_PREBUILD_TOKEN` est utilisé uniquement pour la préconstruction et ne sera pas disponible dans les codespaces créés à partir de votre dépôt.\n\n## Pour aller plus loin\n\n* [Configuration des prébuilds](/fr/codespaces/prebuilding-your-codespaces/configuring-prebuilds)\n* [Résolution des problèmes liés aux prébuilds](/fr/codespaces/troubleshooting/troubleshooting-prebuilds)"}