

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Accédez à votre fournisseur source dans CodeBuild
<a name="access-tokens"></a>

Pour GitHub ou GitHub Enterprise Server, vous utilisez un jeton d'accès personnel, un secret du Gestionnaire de Secrets, une connexion ou une OAuth application pour accéder au fournisseur source. Pour Bitbucket, vous utilisez un jeton d'accès, un mot de passe d'application, un secret du Gestionnaire de Secrets, une connexion ou une OAuth application pour accéder au fournisseur source. 

**Topics**
+ [Créez et stockez un jeton dans un secret du Gestionnaire de Secrets](asm-create-secret.md)
+ [GitHub et accès au serveur d' GitHub entreprise dans CodeBuild](access-tokens-github-overview.md)
+ [Accès à Bitbucket dans CodeBuild](access-tokens-bitbucket-overview.md)
+ [GitLab accéder à CodeBuild](access-tokens-gitlab-overview.md)

# Créez et stockez un jeton dans un secret du Gestionnaire de Secrets
<a name="asm-create-secret"></a>

Si vous choisissez de stocker votre jeton d'accès à l'aide de Secrets Manager, vous pouvez utiliser une connexion secrète existante ou en créer un nouveau. Pour créer un nouveau secret, procédez comme suit :

------
#### [ AWS Management Console ]

**Pour créer un secret Secrets Manager dans le AWS Management Console**

1. Dans le **champ Source provider**, choisissez **Bitbucket** ou **GitHub Enterprise**. **GitHub**

1. Pour **Credential**, effectuez l'une des opérations suivantes :
   + Choisissez **Informations d'identification source par défaut** pour utiliser les informations d'identification source par défaut de votre compte pour les appliquer à tous les projets.

     1. Si vous n'êtes pas connecté à votre fournisseur de source, choisissez **Gérer les informations d'identification de source par défaut**.

     1. Pour le **type d'identification**, choisissez un type d'identification autre que. **CodeConnections**

     1. Pour **Service**, choisissez **Secrets Manager** et pour **Secrets**, choisissez **Nouveau secret**.

     1. Dans **Nom du secret**, entrez le nom de votre secret.

     1. Dans **Description secrète - facultatif**, entrez une description de votre secret.

     1. Selon le fournisseur source que vous avez choisi, entrez votre jeton ou votre nom d'utilisateur et le mot de passe de l'application, puis choisissez **Enregistrer**.
   + Choisissez **Identifiant source personnalisé pour utiliser un identifiant** source personnalisé afin de remplacer les paramètres par défaut de votre compte.

     1. Pour le **type d'identification**, choisissez un type d'identification autre que. **CodeConnections**

     1. Dans **Connexion**, choisissez **Créer un secret**.

     1. Dans **Nom du secret**, entrez le nom de votre secret.

     1. Dans **Description secrète - facultatif**, entrez une description de votre secret.

     1. Selon le fournisseur source que vous avez choisi, entrez votre jeton ou votre nom d'utilisateur et le mot de passe de l'application, puis choisissez **Créer**.

------
#### [ AWS CLI ]

**Pour créer un secret Secrets Manager dans le AWS CLI**
+ Ouvrez une invite de terminal (Linux, macOS ou Unix) ou de commande (Windows). Utilisez le AWS CLI pour exécuter la **create-secret** commande Secrets Manager.

  ```
  aws secretsmanager create-secret --region <aws-region> \
              --name '<secret-name>' \
              --description '<secret-description>' \
              --secret-string '{
                  "ServerType":"<server-type>",
                  "AuthType":"<auth-type>",
                  "Token":"<token>"
                  }' \
              --tags Key=codebuild:source,Value='' \
                  Key=codebuild:source:type,Value=<type> \
                  Key=codebuild:source:provider,Value=<provider>
  ```

  Les secrets de Secrets Manager qui sont CodeBuild acceptés doivent se trouver dans le même compte et dans la même AWS région que le CodeBuild projet et doivent être au format JSON suivant :

  ```
  {
              "ServerType": ServerType,
              "AuthType: AuthType,
              "Token": string,
              "Username": string // Optional and is only used for Bitbucket app password
          }
  ```    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/codebuild/latest/userguide/asm-create-secret.html)

  En outre, CodeBuild utilise les balises de ressources suivantes sur le secret pour garantir que les secrets sont facilement sélectionnables lors de la création ou de la modification de projets.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/codebuild/latest/userguide/asm-create-secret.html)

------

# GitHub et accès au serveur d' GitHub entreprise dans CodeBuild
<a name="access-tokens-github-overview"></a>

En GitHub effet, vous pouvez utiliser un jeton d'accès personnel, une OAuth application, un secret du Gestionnaire de Secrets ou une connexion à une GitHub application pour accéder au fournisseur source. Pour GitHub Enterprise Server, vous pouvez utiliser un jeton d'accès personnel, un secret du Gestionnaire de Secrets ou une connexion GitHub App pour accéder au fournisseur source.

**Topics**
+ [GitHub Connexions aux applications pour GitHub et GitHub Enterprise Server](connections-github-app.md)
+ [GitHub et jeton d'accès au serveur GitHub Enterprise](access-tokens-github.md)
+ [GitHub OAuth appli](oauth-app-github.md)

# GitHub Connexions aux applications pour GitHub et GitHub Enterprise Server
<a name="connections-github-app"></a>

Vous pouvez utiliser GitHub l'application pour vous connecter à CodeBuild. GitHub Les connexions aux applications sont prises en charge via [AWS CodeConnections](https://docs.aws.amazon.com/dtconsole/latest/userguide/welcome-connections.html).

L'accès au fournisseur de source vous permet de déclencher une compilation en vous abonnant à [GitHub événements webhook](github-webhook.md) [ CreateWebhook](https://docs.aws.amazon.com/codebuild/latest/APIReference/API_CreateWebhook.html)using ou [Tutoriel : Configuration d'un CodeBuild exécuteur d' GitHub actions hébergé](action-runner.md) en utilisant in CodeBuild.

**Note**  
CodeConnections est disponible dans un nombre de régions inférieur à CodeBuild. Vous pouvez utiliser des connexions entre régions dans. CodeBuild Les connexions créées dans les régions optionnelles ne peuvent pas être utilisées dans d'autres régions. Pour plus d’informations, consultez [Points de terminaison et quotas AWS CodeConnections](https://docs.aws.amazon.com/general/latest/gr/codestar_connections.html).

**Topics**
+ [Étape 1 : créer une connexion à GitHub l'application (console)](#connections-github-console)
+ [Étape 2 : Accorder l'accès au rôle IAM du CodeBuild projet pour utiliser la connexion](#connections-github-role-access)
+ [Étape 3 : Configuration CodeBuild pour utiliser la nouvelle connexion](#connections-github-account-credential)
+ [Résolution des problèmes liés à l' GitHub application](#connections-github-troubleshooting)

## Étape 1 : créer une connexion à GitHub l'application (console)
<a name="connections-github-console"></a>

Suivez ces étapes pour utiliser la CodeBuild console afin d'ajouter une connexion pour votre projet dans GitHub.

**Pour créer une connexion avec GitHub**
+ Suivez les instructions du *guide de l'utilisateur des outils* de développement pour [créer une connexion à GitHub](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-create-github.html).

**Note**  
Au lieu de créer ou d'utiliser une connexion existante dans votre compte, vous pouvez utiliser une connexion partagée depuis un autre AWS compte. Pour plus d'informations, voir [Partager des connexions avec AWS des comptes](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-share.html).

## Étape 2 : Accorder l'accès au rôle IAM du CodeBuild projet pour utiliser la connexion
<a name="connections-github-role-access"></a>

Vous pouvez accorder l'accès au rôle IAM du CodeBuild projet pour utiliser les GitHub jetons vendus par votre connexion.

**Pour accorder l'accès CodeBuild au rôle IAM du projet**

1. Créez un rôle IAM pour votre CodeBuild projet en suivant les instructions correspondant [CodeBuild Autoriser l'interaction avec d'autres AWS services](setting-up-service-role.md) à votre CodeBuild projet.

1. Tout en suivant les instructions, ajoutez la politique IAM suivante à votre rôle de CodeBuild projet pour autoriser l'accès à la connexion.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "codeconnections:GetConnectionToken",
                   "codeconnections:GetConnection"
               ],
               "Resource": [
                   "arn:aws:iam::*:role/Service*"
               ]
           }
       ]
   }
   ```

------

## Étape 3 : Configuration CodeBuild pour utiliser la nouvelle connexion
<a name="connections-github-account-credential"></a>

Vous pouvez configurer une connexion en tant qu'identifiant au niveau du compte et l'utiliser dans un projet.

------
#### [ AWS Management Console ]

**Pour configurer une connexion en tant qu'identifiant au niveau du compte dans AWS Management Console**

1. Dans le **champ Source provider**, sélectionnez **GitHub**. 

1. Pour **Credential**, effectuez l'une des opérations suivantes :
   + Choisissez **Informations d'identification source par défaut** pour utiliser les informations d'identification source par défaut de votre compte pour les appliquer à tous les projets.

     1. Si vous n'êtes pas connecté à GitHub, choisissez **Gérer les informations d'identification de source par défaut**.

     1. Pour le **type d'identifiant**, choisissez **GitHub App**.

     1. Dans **Connexion**, choisissez d'utiliser une connexion existante ou d'en créer une nouvelle.
   + Choisissez **Identifiant source personnalisé pour utiliser un identifiant** source personnalisé afin de remplacer les paramètres par défaut de votre compte.

     1. Pour le **type d'identifiant**, choisissez **GitHub App**.

     1. Dans **Connexion**, choisissez d'utiliser une connexion existante ou d'en créer une nouvelle.

------
#### [ AWS CLI ]

**Pour configurer une connexion en tant qu'identifiant au niveau du compte dans AWS CLI**
+ Ouvrez une invite de terminal (Linux, macOS ou Unix) ou de commande (Windows). Utilisez le AWS CLI pour exécuter la **import-source-credentials** commande, en spécifiant le `--auth-type``--server-type`, et `--token` pour votre connexion.

  Utilisez la commande suivante :

  ```
  aws codebuild import-source-credentials --auth-type CODECONNECTIONS --server-type GITHUB --token <connection-arn>
  ```

------

Vous pouvez également configurer plusieurs jetons pour vos CodeBuild projets. Pour de plus amples informations, veuillez consulter [Configurer plusieurs jetons comme informations d'identification au niveau de la source](multiple-access-tokens.md#asm-source-credential).

## Résolution des problèmes liés à l' GitHub application
<a name="connections-github-troubleshooting"></a>

Les informations suivantes peuvent vous aider à résoudre les problèmes courants liés à l' GitHub application.

**Topics**
+ [Installez l' GitHub application AWS Connector for dans une région indésirable](#connections-github-troubleshooting.undesired-region)
+ [La connexion à GitHub l'application n'a pas accès aux référentiels](#connections-github-troubleshooting.repo-access)
+ [Le rôle IAM du AWS service ne dispose pas des autorisations IAM nécessaires.](#connections-github-troubleshooting.iam-permissions)

### Installez l' GitHub application AWS Connector for dans une région indésirable
<a name="connections-github-troubleshooting.undesired-region"></a>

**Problème :** vous avez installé le AWS connecteur GitHub depuis le GitHub Marketplace, mais la connexion a été créée dans une région indésirable. Si vous tentez de reconfigurer l'application sur le GitHub site Web, elle ne fonctionnera pas car elle est déjà installée sur votre GitHub compte.

**Cause possible :** l'application étant déjà installée sur votre GitHub compte, vous ne pouvez que reconfigurer les autorisations de l'application.

**Solution recommandée :** vous pouvez créer une nouvelle connexion avec l'ID d'installation dans la région souhaitée.

1. Ouvrez la CodeConnections console dans [https://console.aws.amazon.com/codesuite/Paramètres/connexions](https://console.aws.amazon.com/codesuite/settings/connections) et naviguez jusqu'à la région souhaitée à l'aide du sélecteur de région dans la barre de navigation de la AWS console.

1. Suivez les instructions du *guide de l'utilisateur des outils* de développement pour [créer une connexion à GitHub](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-create-github.html).
**Note**  
Comme vous avez déjà installé le AWS Connector pour GitHub l'application, vous pouvez le choisir au lieu d'installer une nouvelle application.

### La connexion à GitHub l'application n'a pas accès aux référentiels
<a name="connections-github-troubleshooting.repo-access"></a>

**Problème :** un AWS service utilisant la connexion, tel que CodeBuild ou CodePipeline, indique qu'il n'a pas accès au référentiel ou que le référentiel n'existe pas. Voici quelques messages d'erreur possibles :
+ `Authentication required for primary source.`
+ `Unable to create webhook at this time. Please try again later.`
+ `Failed to create webhook. GitHub API limit reached. Please try again later.`

***Cause possible :** il se peut que vous utilisiez l' GitHub application et que vous n'ayez pas accordé l'autorisation d'accès au webhook.*  
**Solution recommandée :** pour accorder l'étendue d'autorisation requise, suivez les instructions de la [section Navigation vers l' GitHub application que vous souhaitez consulter ou modifier](https://docs.github.com/en/apps/using-github-apps/reviewing-and-modifying-installed-github-apps#navigating-to-the-github-app-you-want-to-review-or-modify) pour configurer l'application installée. Dans la section des autorisations, vous verrez que l'application n'a pas d'autorisation pour les webhooks et qu'il est possible de consulter les autorisations récemment demandées. Vérifiez et acceptez les nouvelles autorisations. Pour plus d'informations, consultez la section [Approbation des autorisations mises à jour pour une application](https://docs.github.com/en/apps/using-github-apps/approving-updated-permissions-for-a-github-app). GitHub 

***Cause possible :** La connexion fonctionnait comme prévu, mais elle n'a soudainement plus accès aux référentiels.*  
**Solution possible :** Commencez par examiner vos [autorisations](https://docs.github.com/en/apps/using-github-apps/reviewing-and-revoking-authorization-of-github-apps) et vos [installations](https://docs.github.com/en/apps/using-github-apps/reviewing-and-modifying-installed-github-apps), puis vérifiez que l' GitHub application est autorisée et installée. Si l'installation de l' GitHub application est suspendue, vous devez l'annuler. Si l' GitHub application n'est pas autorisée pour une connexion [UAT (User Access Token)](https://docs.github.com/en/apps/creating-github-apps/authenticating-with-a-github-app/authenticating-with-a-github-app-on-behalf-of-a-user), ou si elle n'est pas installée pour une connexion [IAT (Installation Access Token)](https://docs.github.com/en/apps/creating-github-apps/authenticating-with-a-github-app/authenticating-as-a-github-app-installation), la connexion existante n'est plus utilisable et vous devrez créer une nouvelle connexion. Notez que la réinstallation de l' GitHub application ne rétablira pas la connexion précédente associée à l'ancienne installation.  
**Solution possible :** s'il s'agit d'une connexion UAT, assurez-vous qu'elle n'est pas utilisée simultanément, par exemple lors de plusieurs exécutions CodeBuild simultanées de génération. Cela est dû au fait qu'il invalide GitHub immédiatement un UAT précédemment émis si un jeton expirant est actualisé par la connexion. Si vous devez utiliser une connexion UAT pour plusieurs CodeBuild versions simultanées, vous pouvez créer plusieurs connexions et utiliser chaque connexion indépendamment.  
**Solution possible :** Si la connexion UAT n'a pas été utilisée au cours des 6 derniers mois, la connexion sera invalidée par. GitHub Pour résoudre ce problème, créez une nouvelle connexion.

***Cause possible :** vous avez peut-être utilisé une connexion UAT sans installer l'application.*  
**Solution recommandée :** Bien que la création d'une connexion UAT ne nécessite pas d'associer la connexion à une installation d' GitHub application, une installation est requise pour que le référentiel soit accessible. Suivez les instructions pour [vérifier les installations](https://docs.github.com/en/apps/using-github-apps/reviewing-and-modifying-installed-github-apps) afin de vous assurer que l' GitHub application est bien installée. S'il n'est pas installé, accédez à la [page de GitHub l'application](https://github.com/marketplace/aws-connector-for-github) pour installer l'application. Pour plus d'informations sur l'accès de l'UAT, consultez [À propos des jetons d'accès utilisateur](https://docs.github.com/en/apps/creating-github-apps/authenticating-with-a-github-app/generating-a-user-access-token-for-a-github-app#about-user-access-tokens).

### Le rôle IAM du AWS service ne dispose pas des autorisations IAM nécessaires.
<a name="connections-github-troubleshooting.iam-permissions"></a>

**Problème :** l'un des messages d'erreur suivants s'affiche :
+ `Access denied to connection <connection-arn>`
+ `Failed to get access token from <connection-arn>`

**Solution recommandée :** vous utilisez généralement une connexion avec un AWS service, tel que CodePipeline ou CodeBuild. Lorsque vous attribuez AWS un rôle IAM au AWS service, celui-ci peut utiliser l'autorisation du rôle pour agir en votre nom. Assurez-vous que le rôle IAM dispose des autorisations nécessaires. Pour plus d'informations sur l'autorisation IAM nécessaire, voir [Accorder l'accès au rôle IAM CodeBuild du projet pour utiliser la connexion et la](#connections-github-role-access) [gestion des identités et des accès pour les AWS CodeStar notifications et CodeConnections](https://docs.aws.amazon.com/dtconsole/latest/userguide/security-iam.html) dans le guide de l'*utilisateur de la console Developer Tools*.

# GitHub et jeton d'accès au serveur GitHub Enterprise
<a name="access-tokens-github"></a>

## Prérequis de jeton d'accès
<a name="access-tokens-github-prereqs"></a>

Avant de commencer, vous devez ajouter les étendues d'autorisation appropriées à votre jeton GitHub d'accès. 

En effet GitHub, votre jeton d'accès personnel doit avoir les champs d'application suivants. 
+ **repo** : accorde un contrôle total des référentiels privés. 
+ **repo:status** : accorde l' read/write accès aux statuts de validation des référentiels publics et privés.
+ **admin:repo\$1hook** : accorde le contrôle total des hooks de référentiel. Cette règle n'est pas obligatoire si votre jeton dispose de la règle `repo`. 
+ **admin:org\$1hook** : accorde le contrôle total des hooks de l'organisation. Cette étendue n'est requise que si vous utilisez la fonctionnalité de webhook de l'organisation.

Pour plus d'informations, consultez [la section Comprendre les étendues des OAuth applications](https://developer.github.com/apps/building-oauth-apps/understanding-scopes-for-oauth-apps/) sur le GitHub site Web.

Si vous utilisez des jetons d'accès personnels précis, selon votre cas d'utilisation, votre jeton d'accès personnel peut nécessiter les autorisations suivantes :
+ **Contenu : Lecture seule** : autorise l'accès aux référentiels privés. Cette autorisation est requise si vous utilisez des référentiels privés comme source.
+ **Statuts de validation : lecture et écriture** : accorde l'autorisation de créer des statuts de validation. Cette autorisation est requise si le webhook est configuré dans votre projet ou si la fonctionnalité d'état de création de rapports est activée.
+ **Webhooks : lecture et écriture** : accorde l'autorisation de gérer les webhooks. Cette autorisation est requise si le webhook est configuré dans votre projet.
+ **Demandes d'extraction : en lecture seule** : accorde l'autorisation d'accéder aux demandes d'extraction. Cette autorisation est requise si votre webhook possède un `FILE_PATH` filtre sur les événements de pull request.
+ **Administration : lecture et écriture** : cette autorisation est requise si vous utilisez la fonctionnalité GitHub Actions Runner auto-hébergée avec CodeBuild. Pour plus de détails, voir [Créer un jeton d'enregistrement pour un référentiel](https://docs.github.com/en/rest/actions/self-hosted-runners?apiVersion=2022-11-28#create-a-registration-token-for-a-repository) et[Tutoriel : Configuration d'un CodeBuild exécuteur d' GitHub actions hébergé](action-runner.md).

**Note**  
Si vous souhaitez accéder aux référentiels de l'organisation, assurez-vous de spécifier l'organisation en tant que propriétaire de la ressource du jeton d'accès.

Pour plus d'informations, consultez la section [Autorisations requises pour les jetons d'accès personnels détaillés](https://docs.github.com/en/rest/authentication/permissions-required-for-fine-grained-personal-access-tokens?apiVersion=2022-11-28) sur le GitHub site Web.

## Connect GitHub avec un jeton d'accès (console)
<a name="access-tokens-github-console"></a>

Pour utiliser la console afin de connecter votre projet à GitHub l'aide d'un jeton d'accès, procédez comme suit lorsque vous créez un projet. Pour plus d'informations, consultez [Création d'un projet de génération (console)](create-project.md#create-project-console). 

1. Dans le **champ Source provider**, sélectionnez **GitHub**. 

1. Pour **Credential**, effectuez l'une des opérations suivantes :
   + Choisissez d'utiliser les informations d'identification du compte pour appliquer les informations d'identification source par défaut de votre compte à tous les projets.

     1. Si vous n'êtes pas connecté à GitHub, choisissez **Gérer les informations d'identification du compte**.

     1. Pour le **type d'identifiant**, choisissez **jeton d'accès personnel**.
   + Si vous avez choisi d'utiliser les informations d'identification au niveau du compte pour le **service**, choisissez le service que vous souhaitez utiliser pour stocker votre jeton et procédez comme suit :

     1. Si vous choisissez d'utiliser **Secrets Manager**, vous pouvez choisir d'utiliser une connexion secrète existante ou d'en créer un nouveau, puis choisir **Enregistrer**. Pour plus d'informations sur la création d'un nouveau secret, consultez[Créez et stockez un jeton dans un secret du Gestionnaire de Secrets](asm-create-secret.md).

     1. Si vous choisissez de l'utiliser **CodeBuild**, entrez votre jeton d'accès GitHub personnel, puis choisissez **Enregistrer**.
   + Sélectionnez **Utiliser les informations d'identification de remplacement pour ce projet uniquement** pour utiliser des informations d'identification source personnalisées afin de remplacer les paramètres d'identification de votre compte.

     1. Dans la liste des informations d'identification renseignée, choisissez l'une des options sous **Jeton d'accès personnel**.

     1. Vous pouvez également créer un nouveau jeton d'accès personnel en sélectionnant **créer une nouvelle connexion par jeton d'accès personnel** dans la description.

## Connectez-vous à GitHub l'aide d'un jeton d'accès (CLI)
<a name="access-tokens-github-cli"></a>

Suivez ces étapes pour connecter votre projet AWS CLI à l' GitHub aide d'un jeton d'accès. Pour plus d'informations sur l'utilisation du AWS CLI with AWS CodeBuild, consultez le[Référence des commandes en ligne](cmd-ref.md). 

1. Exécutez la commande **import-source-credentials** : 

   ```
   aws codebuild import-source-credentials --generate-cli-skeleton
   ```

   Des données au format JSON apparaissent dans la sortie. Copiez les données dans un fichier (par exemple,`import-source-credentials.json`) situé sur l'ordinateur local ou sur l'instance où le AWS CLI est installé. Modifiez les données copiées comme suit, puis enregistrez vos résultats. 

   ```
   {
       "serverType": "server-type",
       "authType": "auth-type",
       "shouldOverwrite": "should-overwrite",
       "token": "token",
       "username": "username"
       }
   ```

   Remplacez les éléments suivants : 
   + *server-type*: valeur requise. Le fournisseur de source utilisé pour cette information d'identification. Les valeurs valides sont GITHUB, BITBUCKET, GITHUB\$1ENTERPRISE, GITLAB et GITLAB\$1SELF\$1MANAGED.
   + *auth-type*: valeur requise. Type d'authentification utilisé pour se connecter à un référentiel. Les valeurs valides sont OAUTH, BASIC\$1AUTH, PERSONAL\$1ACCESS\$1TOKEN, CODECONNECTIONS et SECRETS\$1MANAGER. Car GitHub seul PERSONAL\$1ACCESS\$1TOKEN est autorisé. BASIC\$1AUTH n'est autorisé qu'avec le mot de passe de l'application Bitbucket.
   + *should-overwrite*: valeur facultative. Définissez cette valeur sur `false` pour empêcher le remplacement des informations d'identification source du référentiel. Définissez cette valeur sur `true` pour remplacer les informations d'identification source du référentiel. La valeur par défaut est `true`.
   + *token*: valeur requise. Pour GitHub notre serveur d' GitHub entreprise, il s'agit du jeton d'accès personnel. Pour Bitbucket, il s'agit du jeton d'accès personnel ou du mot de passe de l'application. Pour le type d'authentification CODECONNECTIONS, il s'agit de l'ARN de connexion. Pour le type d'authentification SECRETS\$1MANAGER, il s'agit de l'ARN secret.
   + *username*: valeur facultative. Ce paramètre est ignoré pour GitHub les fournisseurs de sources GitHub Enterprise Server. 

1. Pour vous connecter à votre compte avec un jeton d'accès, passez au répertoire contenant le fichier `import-source-credentials.json` que vous avez enregistré à l'étape 1 et exécutez à nouveau la commande **import-source-credentials**. 

   ```
   aws codebuild import-source-credentials --cli-input-json file://import-source-credentials.json
   ```

   Les données au format JSON apparaissent dans la sortie avec un Amazon Resource Name (ARN). 

   ```
   {
       "arn": "arn:aws:codebuild:region:account-id:token/server-type"
       }
   ```
**Note**  
Si vous exécutez la commande **import-source-credentials** avec le même type de serveur et de auth une seconde fois, le jeton d'accès stocké est mis à jour. 

   Une fois que votre compte est connecté par un jeton d'accès, vous pouvez l'utiliser `create-project` pour créer votre CodeBuild projet. Pour de plus amples informations, veuillez consulter [Création d'un projet de génération (AWS CLI)](create-project.md#create-project-cli). 

1. Pour afficher les jetons d'accès connectés, exécutez la commande **list-source-credentials**. 

   ```
   aws codebuild list-source-credentials
   ```

   Un objet `sourceCredentialsInfos` au format JSON apparaît dans la sortie : 

   ```
   {
           "sourceCredentialsInfos": [
               {
                   "authType": "auth-type",
                   "serverType": "server-type", 
                   "arn": "arn"
               }
           ]
       }
   ```

   Le `sourceCredentialsObject` contient la liste des informations d'identification de la source connectée : 
   + L'élément `authType` est le type d'authentification utilisé par les informations d'identification. Cela peut être `OAUTH``BASIC_AUTH`,`PERSONAL_ACCESS_TOKEN`,`CODECONNECTIONS`, ou`SECRETS_MANAGER`. 
   + Le `serverType` est le type de fournisseur de source. Cela peut être `GITHUB``GITHUB_ENTERPRISE`,`BITBUCKET`,`GITLAB`, ou`GITLAB_SELF_MANAGED`. 
   + Le `arn` est l'ARN du jeton. 

1. Pour vous déconnecter d'un fournisseur de source et supprimer ses jetons d'accès, exécutez la commande **delete-source-credentials** avec son ARN. 

   ```
   aws codebuild delete-source-credentials --arn arn-of-your-credentials
   ```

   Des données au format JSON sont renvoyées avec un ARN des informations d'identification supprimées. 

   ```
   {
       "arn": "arn:aws:codebuild:region:account-id:token/server-type"
       }
   ```

# GitHub OAuth appli
<a name="oauth-app-github"></a>

## Connect GitHub en utilisant OAuth (console)
<a name="oauth-app-github-console"></a>

Pour utiliser la console afin de connecter votre projet à GitHub une OAuth application, procédez comme suit lorsque vous créez un projet. Pour plus d'informations, consultez [Création d'un projet de génération (console)](create-project.md#create-project-console). 

1. Dans le **champ Source provider**, sélectionnez **GitHub**. 

1. Pour **Credential**, effectuez l'une des opérations suivantes :
   + Choisissez d'utiliser les informations d'identification du compte pour appliquer les informations d'identification source par défaut de votre compte à tous les projets.

     1. Si vous n'êtes pas connecté à GitHub, choisissez **Gérer les informations d'identification du compte**.

     1. Pour le **type d'identifiant**, choisissez **OAuth app**.
   + Si vous avez choisi d'utiliser les informations d'identification au niveau du compte pour le **service**, choisissez le service que vous souhaitez utiliser pour stocker votre jeton et procédez comme suit :

     1. Si vous choisissez d'utiliser **Secrets Manager**, vous pouvez choisir d'utiliser une connexion secrète existante ou d'en créer un nouveau, puis choisir **Enregistrer**. Pour plus d'informations sur la création d'un nouveau secret, consultez[Créez et stockez un jeton dans un secret du Gestionnaire de Secrets](asm-create-secret.md).

     1. Si vous choisissez d'utiliser, **CodeBuild**puis choisissez **Enregistrer**.
   + Sélectionnez **Utiliser les informations d'identification de remplacement pour ce projet uniquement** pour utiliser des informations d'identification source personnalisées afin de remplacer les paramètres d'identification de votre compte.

     1. Dans la liste des informations d'identification renseignée, choisissez l'une des options sous **OAuth application**.

     1. Vous pouvez également créer un nouveau jeton d' OAuth application en sélectionnant **Créer une nouvelle connexion par jeton d'application Oauth** dans la description.

Pour consulter vos OAuth applications autorisées, accédez à [Applications](https://github.com/settings/applications) activées GitHub et vérifiez qu'une application nommée `AWS CodeBuild (region)` appartenant à [aws-codesuite](https://github.com/aws-codesuite) est répertoriée.

# Accès à Bitbucket dans CodeBuild
<a name="access-tokens-bitbucket-overview"></a>

Pour Bitbucket, vous utilisez un jeton d'accès, un mot de passe d'application, une OAuth application ou une connexion Bitbucket pour accéder au fournisseur source.

**Topics**
+ [Connexions à l'application Bitbucket](connections-bitbucket-app.md)
+ [Mot de passe ou jeton d'accès de l'application Bitbucket](access-tokens-bitbucket.md)
+ [Application Bitbucket OAuth](oauth-app-bitbucket.md)

# Connexions à l'application Bitbucket
<a name="connections-bitbucket-app"></a>

Vous pouvez utiliser Bitbucket pour vous connecter à CodeBuild. Les connexions à l'application Bitbucket sont prises en charge via [AWS CodeConnections](https://docs.aws.amazon.com/dtconsole/latest/userguide/welcome-connections.html).

**Note**  
CodeConnections est disponible dans moins de régions que CodeBuild. Vous pouvez utiliser des connexions entre régions dans. CodeBuild Les connexions créées dans les régions optionnelles ne peuvent pas être utilisées dans d'autres régions. Pour plus d’informations, consultez [Points de terminaison et quotas AWS CodeConnections](https://docs.aws.amazon.com/general/latest/gr/codestar_connections.html).

**Topics**
+ [Étape 1 : créer une connexion à Bitbucket (console)](#connections-bitbucket-console)
+ [Étape 2 : Accorder l'accès au rôle IAM du CodeBuild projet pour utiliser la connexion](#connections-bitbucket-role-access)
+ [Étape 3 : Configuration CodeBuild pour utiliser la nouvelle connexion](#connections-bitbucket-account-credential)

## Étape 1 : créer une connexion à Bitbucket (console)
<a name="connections-bitbucket-console"></a>

Suivez ces étapes pour utiliser la CodeBuild console afin d'ajouter une connexion pour votre projet dans Bitbucket.

**Pour créer une connexion à Bitbucket**
+ Suivez les instructions du *guide de l'utilisateur des outils* de développement pour [créer une connexion à Bitbucket](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-create-bitbucket.html).

**Note**  
Au lieu de créer ou d'utiliser une connexion existante dans votre compte, vous pouvez utiliser une connexion partagée depuis un autre AWS compte. Pour plus d'informations, voir [Partager des connexions avec AWS des comptes](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-share.html).

## Étape 2 : Accorder l'accès au rôle IAM du CodeBuild projet pour utiliser la connexion
<a name="connections-bitbucket-role-access"></a>

Vous pouvez accorder l'accès au rôle IAM du CodeBuild projet pour utiliser les jetons Bitbucket vendus par votre connexion.

**Pour accorder l'accès CodeBuild au rôle IAM du projet**

1. Créez un rôle IAM pour votre CodeBuild projet en suivant les instructions correspondant [CodeBuild Autoriser l'interaction avec d'autres AWS services](setting-up-service-role.md) à votre CodeBuild projet.

1. Tout en suivant les instructions, ajoutez la politique IAM suivante à votre rôle de CodeBuild projet pour autoriser l'accès à la connexion.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "codeconnections:GetConnectionToken",
                   "codeconnections:GetConnection"
               ],
               "Resource": [
                   "arn:aws:iam::*:role/Service*"
               ]
           }
       ]
   }
   ```

------

## Étape 3 : Configuration CodeBuild pour utiliser la nouvelle connexion
<a name="connections-bitbucket-account-credential"></a>

Vous pouvez configurer une connexion en tant qu'identifiant au niveau du compte et l'utiliser dans un projet.

------
#### [ AWS Management Console ]

**Pour configurer une connexion en tant qu'identifiant au niveau du compte dans AWS Management Console**

1. Pour **Source provider (Fournisseur de source)**, choisissez **Bitbucket**. 

1. Pour **Credential**, effectuez l'une des opérations suivantes :
   + Choisissez **Informations d'identification source par défaut** pour utiliser les informations d'identification source par défaut de votre compte pour les appliquer à tous les projets.

     1. Si vous n'êtes pas connecté à Bitbucket, choisissez **Gérer les informations d'identification de source par défaut**.

     1. Pour le **type d'identifiant**, choisissez **CodeConnections**.

     1. Dans **Connexion**, choisissez d'utiliser une connexion existante ou d'en créer une nouvelle.
   + Choisissez **Identifiant source personnalisé pour utiliser un identifiant** source personnalisé afin de remplacer les paramètres par défaut de votre compte.

     1. Pour le **type d'identifiant**, choisissez **CodeConnections**.

     1. Dans **Connexion**, choisissez d'utiliser une connexion existante ou d'en créer une nouvelle.

------
#### [ AWS CLI ]

**Pour configurer une connexion en tant qu'identifiant au niveau du compte dans AWS CLI**
+ Ouvrez une invite de terminal (Linux, macOS ou Unix) ou de commande (Windows). Utilisez le AWS CLI pour exécuter la **import-source-credentials** commande, en spécifiant le `--auth-type``--server-type`, et `--token` pour votre connexion.

  Utilisez la commande suivante :

  ```
  aws codebuild import-source-credentials --auth-type CODECONNECTIONS --server-type BITBUCKET --token <connection-arn>
  ```

------

Pour plus d'informations sur la configuration de plusieurs jetons dans votre CodeBuild projet, consultez[Configurer plusieurs jetons comme informations d'identification au niveau de la source](multiple-access-tokens.md#asm-source-credential).

# Mot de passe ou jeton d'accès de l'application Bitbucket
<a name="access-tokens-bitbucket"></a>

## Conditions préalables
<a name="access-tokens-bitbucket-prerequisites"></a>

Avant de commencer, vous devez ajouter les étendues d'autorisation appropriées au mot de passe ou au jeton d'accès de votre application Bitbucket. 

Pour Bitbucket, le mot de passe ou le jeton d'accès de votre application doit avoir les champs d'application suivants. 
+ **repository:read** : accorde l'accès en lecture à tous les référentiels auxquels l'utilisateur d'autorisation a accès. 
+ **pullrequest:read** : accorde l'accès en lecture aux demandes d'extraction. Si votre projet possède un webhook Bitbucket, le mot de passe ou le jeton d'accès de votre application doit avoir cette portée. 
+ **webhook** : accorde l'accès aux webhooks. Si votre projet comporte une opération webhook, le mot de passe ou le jeton d'accès de votre application doit avoir cette portée. 
+ **compte** : accorde un accès en lecture aux informations du compte de l'utilisateur.

Pour plus d'informations, consultez [Scopes for Bitbucket Cloud REST API](https://developer.atlassian.com/cloud/bitbucket/bitbucket-cloud-rest-api-scopes/) et Bitbucket [Cloud OAuth sur le site Web de Bitbucket](https://confluence.atlassian.com/bitbucket/oauth-on-bitbucket-cloud-238027431.html).

## Connect Bitbucket avec un mot de passe d'application (console)
<a name="access-tokens-bitbucket-password-console"></a>

Pour utiliser la console afin de connecter votre projet à Bitbucket à l'aide d'un mot de passe d'application, procédez comme suit lorsque vous créez un projet. Pour plus d'informations, consultez [Création d'un projet de génération (console)](create-project.md#create-project-console). 

1. Pour **Source provider (Fournisseur de source)**, choisissez **Bitbucket**. 

1. Pour **Credential**, effectuez l'une des opérations suivantes :
   + Choisissez d'utiliser les informations d'identification du compte pour appliquer les informations d'identification source par défaut de votre compte à tous les projets.

     1. Si vous n'êtes pas connecté à Bitbucket, choisissez **Gérer les informations d'identification du compte**.

     1. Pour le **type d'identifiant,** choisissez le mot de **passe de l'application**.
   + Si vous avez choisi d'utiliser les informations d'identification au niveau du compte pour le **service**, choisissez le service que vous souhaitez utiliser pour stocker votre jeton et procédez comme suit :

     1. Si vous choisissez d'utiliser **Secrets Manager**, vous pouvez choisir d'utiliser une connexion secrète existante ou d'en créer un nouveau, puis choisir **Enregistrer**. Pour plus d'informations sur la création d'un nouveau secret, consultez[Créez et stockez un jeton dans un secret du Gestionnaire de Secrets](asm-create-secret.md).

     1. Si vous choisissez de l'utiliser **CodeBuild**, entrez votre nom d'utilisateur Bitbucket et le mot de passe de l'application, puis choisissez **Enregistrer**.
   + Sélectionnez **Utiliser les informations d'identification de remplacement pour ce projet uniquement** pour utiliser des informations d'identification source personnalisées afin de remplacer les paramètres d'identification de votre compte.

     1. Dans la liste des informations d'identification renseignée, choisissez l'une des options sous Mot de **passe de l'application**.

     1. Vous pouvez également créer un nouveau jeton de mot de passe d'application en sélectionnant **créer une nouvelle connexion par mot de passe d'application** dans la description.

## Connect Bitbucket avec un jeton d'accès (console)
<a name="access-tokens-bitbucket-console"></a>

Pour utiliser la console afin de connecter votre projet à Bitbucket à l'aide d'un jeton d'accès, procédez comme suit lorsque vous créez un projet. Pour plus d'informations, consultez [Création d'un projet de génération (console)](create-project.md#create-project-console). 

1. Pour **Source provider (Fournisseur de source)**, choisissez **Bitbucket**. 

1. Pour **Credential**, effectuez l'une des opérations suivantes :
   + Choisissez d'utiliser les informations d'identification du compte pour appliquer les informations d'identification source par défaut de votre compte à tous les projets.

     1. Si vous n'êtes pas connecté à Bitbucket, choisissez **Gérer les informations d'identification du compte**.

     1. Pour le **type d'identifiant**, choisissez **jeton d'accès personnel**.
   + Si vous avez choisi d'utiliser les informations d'identification au niveau du compte pour le **service**, choisissez le service que vous souhaitez utiliser pour stocker votre jeton et procédez comme suit :

     1. Si vous choisissez d'utiliser **Secrets Manager**, vous pouvez choisir d'utiliser une connexion secrète existante ou d'en créer un nouveau, puis choisir **Enregistrer**. Pour plus d'informations sur la création d'un nouveau secret, consultez[Créez et stockez un jeton dans un secret du Gestionnaire de Secrets](asm-create-secret.md).

     1. Si vous choisissez de l'utiliser **CodeBuild**, entrez votre jeton d'accès personnel Bitbucket, puis choisissez **Enregistrer**.
   + Sélectionnez **Utiliser les informations d'identification de remplacement pour ce projet uniquement** pour utiliser des informations d'identification source personnalisées afin de remplacer les paramètres d'identification de votre compte.

     1. Dans la liste des informations d'identification renseignée, choisissez l'une des options sous **Jeton d'accès personnel**.

     1. Vous pouvez également créer un nouveau jeton d'accès personnel en sélectionnant **créer une nouvelle connexion par jeton d'accès personnel** dans la description.

## Connectez Bitbucket à l'aide d'un mot de passe d'application ou d'un jeton d'accès (CLI)
<a name="access-tokens-bitbucket-cli"></a>

Suivez ces étapes pour connecter votre projet à Bitbucket AWS CLI à l'aide d'un mot de passe d'application ou d'un jeton d'accès. Pour plus d'informations sur l'utilisation du AWS CLI with AWS CodeBuild, consultez le[Référence des commandes en ligne](cmd-ref.md). 

1. Exécutez la commande **import-source-credentials** : 

   ```
   aws codebuild import-source-credentials --generate-cli-skeleton
   ```

   Des données au format JSON apparaissent dans la sortie. Copiez les données dans un fichier (par exemple,`import-source-credentials.json`) situé sur l'ordinateur local ou sur l'instance où le AWS CLI est installé. Modifiez les données copiées comme suit, puis enregistrez vos résultats. 

   ```
   {
       "serverType": "BITBUCKET",
       "authType": "auth-type",
       "shouldOverwrite": "should-overwrite",
       "token": "token",
       "username": "username"
       }
   ```

   Remplacez les éléments suivants : 
   + *server-type*: valeur requise. Le fournisseur de source utilisé pour cette information d'identification. Les valeurs valides sont GITHUB, BITBUCKET, GITHUB\$1ENTERPRISE, GITLAB et GITLAB\$1SELF\$1MANAGED.
   + *auth-type*: valeur requise. Type d'authentification utilisé pour se connecter à un référentiel. Les valeurs valides sont OAUTH, BASIC\$1AUTH, PERSONAL\$1ACCESS\$1TOKEN, CODECONNECTIONS et SECRETS\$1MANAGER. Car GitHub seul PERSONAL\$1ACCESS\$1TOKEN est autorisé. BASIC\$1AUTH n'est autorisé qu'avec le mot de passe de l'application Bitbucket.
   + *should-overwrite*: valeur facultative. Définissez cette valeur sur `false` pour empêcher le remplacement des informations d'identification source du référentiel. Définissez cette valeur sur `true` pour remplacer les informations d'identification source du référentiel. La valeur par défaut est `true`.
   + *token*: valeur requise. Pour GitHub notre serveur d' GitHub entreprise, il s'agit du jeton d'accès personnel. Pour Bitbucket, il s'agit du jeton d'accès personnel ou du mot de passe de l'application. Pour le type d'authentification CODECONNECTIONS, il s'agit de l'ARN de connexion. Pour le type d'authentification SECRETS\$1MANAGER, il s'agit de l'ARN secret.
   + *username*: valeur facultative. Ce paramètre est ignoré pour GitHub les fournisseurs de sources GitHub Enterprise Server. 

1. Pour connecter votre compte à l'aide d'un mot de passe d'application ou d'un jeton d'accès, accédez au répertoire qui contient le `import-source-credentials.json` fichier que vous avez enregistré à l'étape 1 et réexécutez la **import-source-credentials** commande. 

   ```
   aws codebuild import-source-credentials --cli-input-json file://import-source-credentials.json
   ```

   Les données au format JSON apparaissent dans la sortie avec un Amazon Resource Name (ARN). 

   ```
   {
       "arn": "arn:aws:codebuild:region:account-id:token/server-type"
       }
   ```
**Note**  
Si vous exécutez la commande **import-source-credentials** avec le même type de serveur et de auth une seconde fois, le jeton d'accès stocké est mis à jour. 

   Une fois que votre compte est connecté à l'aide d'un mot de passe d'application, vous pouvez `create-project` l'utiliser pour créer votre CodeBuild projet. Pour de plus amples informations, veuillez consulter [Création d'un projet de génération (AWS CLI)](create-project.md#create-project-cli). 

1. Pour afficher les mots de passe ou les jetons d'accès des applications connectées, exécutez la **list-source-credentials** commande. 

   ```
   aws codebuild list-source-credentials
   ```

   Un objet `sourceCredentialsInfos` au format JSON apparaît dans la sortie : 

   ```
   {
           "sourceCredentialsInfos": [
               {
                   "authType": "auth-type",
                   "serverType": "BITBUCKET", 
                   "arn": "arn"
               }
           ]
       }
   ```

   Le `sourceCredentialsObject` contient la liste des informations d'identification de la source connectée : 
   + L'élément `authType` est le type d'authentification utilisé par les informations d'identification. Cela peut être `OAUTH``BASIC_AUTH`,`PERSONAL_ACCESS_TOKEN`,`CODECONNECTIONS`, ou`SECRETS_MANAGER`. 
   + Le `serverType` est le type de fournisseur de source. Cela peut être `GITHUB``GITHUB_ENTERPRISE`,`BITBUCKET`,`GITLAB`, ou`GITLAB_SELF_MANAGED`. 
   + Le `arn` est l'ARN du jeton. 

1. Pour vous déconnecter d'un fournisseur source et supprimer son mot de passe d'application ou ses jetons d'accès, exécutez la **delete-source-credentials** commande avec son ARN. 

   ```
   aws codebuild delete-source-credentials --arn arn-of-your-credentials
   ```

   Des données au format JSON sont renvoyées avec un ARN des informations d'identification supprimées. 

   ```
   {
       "arn": "arn:aws:codebuild:region:account-id:token/server-type"
       }
   ```

# Application Bitbucket OAuth
<a name="oauth-app-bitbucket"></a>

## Connect Bitbucket en utilisant OAuth (console)
<a name="oauth-app-bitbucket-console"></a>

Pour utiliser la console afin de connecter votre projet à Bitbucket à l'aide d'une OAuth application, procédez comme suit lorsque vous créez un projet. Pour plus d'informations, consultez [Création d'un projet de génération (console)](create-project.md#create-project-console). 

1. Pour **Source provider (Fournisseur de source)**, choisissez **Bitbucket**. 

1. Pour **Credential**, effectuez l'une des opérations suivantes :
   + Choisissez d'utiliser les informations d'identification du compte pour appliquer les informations d'identification source par défaut de votre compte à tous les projets.

     1. Si vous n'êtes pas connecté à Bitbucket, choisissez **Gérer les informations d'identification du compte**.

     1. Pour le **type d'identifiant**, choisissez **OAuth app**.
   + Si vous avez choisi d'utiliser les informations d'identification au niveau du compte pour le **service**, choisissez le service que vous souhaitez utiliser pour stocker votre jeton et procédez comme suit :

     1. Si vous choisissez d'utiliser **Secrets Manager**, vous pouvez choisir d'utiliser une connexion secrète existante ou d'en créer un nouveau, puis choisir **Enregistrer**. Pour plus d'informations sur la création d'un nouveau secret, consultez[Créez et stockez un jeton dans un secret du Gestionnaire de Secrets](asm-create-secret.md).

     1. Si vous choisissez d'utiliser, **CodeBuild**puis choisissez **Enregistrer**.
   + Sélectionnez **Utiliser les informations d'identification de remplacement pour ce projet uniquement** pour utiliser des informations d'identification source personnalisées afin de remplacer les paramètres d'identification de votre compte.

     1. Dans la liste des informations d'identification renseignée, choisissez l'une des options sous **OAuth application**.

     1. Vous pouvez également créer un nouveau jeton d' OAuth application en sélectionnant **Créer une nouvelle connexion par jeton d'application Oauth** dans la description.

Pour consulter vos OAuth applications autorisées, accédez à [Autorisations d'](https://bitbucket.org/account/settings/app-authorizations/)applications sur Bitbucket et vérifiez qu'une application nommée `AWS CodeBuild (region)` est répertoriée. 

# GitLab accéder à CodeBuild
<a name="access-tokens-gitlab-overview"></a>

En GitLab effet, vous utilisez une GitLab connexion pour accéder au fournisseur source.

**Topics**
+ [Connect CodeBuild à GitLab](#connections-gitlab)

## Connect CodeBuild à GitLab
<a name="connections-gitlab"></a>

Les connexions vous permettent d'autoriser et d'établir des configurations qui associent votre fournisseur tiers aux AWS ressources que vous utilisez AWS CodeConnections. Pour associer votre référentiel tiers en tant que source pour votre projet de construction, vous utilisez une connexion. 

Pour ajouter un fournisseur de source GitLab ou un fournisseur de source GitLab autogéré CodeBuild, vous pouvez choisir de : 
+ Utilisez l'assistant de **création de projet** ou la page **Modifier la source** de la CodeBuild console pour choisir l'option **GitLab**ou le fournisseur **GitLab autogéré**. Consultez [Création d'une connexion à GitLab (console)](#connections-gitlab-console) la section pour ajouter le fournisseur source. La console vous permet de créer une ressource de connexions.
+ Utilisez la CLI pour créer vos ressources de connexions, voir [Création d'une connexion à GitLab (CLI)](#connections-gitlab-cli) pour créer une ressource de connexions avec la CLI.

**Note**  
Vous pouvez également créer une connexion à l'aide de la console Developer Tools sous **Paramètres**. Voir [Créer une connexion](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-create.html).

**Note**  
En autorisant l'installation de cette connexion GitLab, vous autorisez notre service à traiter vos données en accédant à votre compte, et vous pouvez révoquer ces autorisations à tout moment en désinstallant l'application.

### Créez une connexion avec GitLab
<a name="connections-gitlab-create"></a>

Cette section décrit comment se connecter GitLab à CodeBuild. Pour plus d’informations sur les connexions GitLab , consultez [Connect CodeBuild à GitLab](#connections-gitlab).

Avant de commencer :
+ Vous devez déjà avoir créé un compte auprès de GitLab.
**Note**  
Les connexions fournissent uniquement l'accès aux référentiels appartenant au compte qui a été utilisé pour créer et autoriser la connexion. 
**Note**  
Vous pouvez créer des connexions à un référentiel dans lequel vous avez le rôle de **propriétaire** GitLab, puis la connexion peut être utilisée avec le référentiel avec des ressources telles que CodeBuild. Pour les référentiels dans des groupes, il n'est pas nécessaire d'être le propriétaire du groupe.
+ Pour spécifier une source pour votre projet de build, vous devez déjà avoir créé un référentiel sur GitLab.

**Topics**
+ [Création d'une connexion à GitLab (console)](#connections-gitlab-console)
+ [Création d'une connexion à GitLab (CLI)](#connections-gitlab-cli)

#### Création d'une connexion à GitLab (console)
<a name="connections-gitlab-console"></a>

Suivez ces étapes pour utiliser la CodeBuild console afin d'ajouter une connexion pour votre projet (référentiel) dans GitLab.

**Note**  
Au lieu de créer ou d'utiliser une connexion existante dans votre compte, vous pouvez utiliser une connexion partagée depuis un autre AWS compte. Pour plus d'informations, voir [Partager des connexions avec AWS des comptes](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-share.html).

**Pour créer ou modifier votre projet de construction**

1. Connectez-vous à la CodeBuild console.

1. Choisissez l’une des options suivantes.
   + Choisissez de créer un projet de construction. Suivez les étapes décrites [Création d'un projet de génération (console)](create-project.md#create-project-console) pour terminer le premier écran et dans la section **Source**, sous **Source Provider**, sélectionnez **GitLab**.
   + Choisissez de modifier un projet de construction existant. Choisissez **Modifier**, puis **Source**. Sur la page **Modifier la source**, sous **Fournisseur de source**, sélectionnez **GitLab**.

1. Sélectionnez l’une des méthodes suivantes :
   + Sous **Connexion**, choisissez **Connexion par défaut**. La connexion par défaut applique une GitLab connexion par défaut à tous les projets.
   + Sous **Connexion**, choisissez **Connexion personnalisée**. Connexion personnalisée applique une GitLab connexion personnalisée qui remplace les paramètres par défaut de votre compte.

1. Effectuez l’une des actions suivantes :
   + Sous **Connexion par défaut** ou **Connexion personnalisée**, si vous n'avez pas encore créé de connexion avec votre fournisseur, choisissez **Créer une nouvelle GitLab connexion**. Passez à l'étape 5 pour créer la connexion.
   + Sous **Connexion**, si vous avez déjà créé une connexion avec votre fournisseur, choisissez-la. Passez à l'étape 10.
**Note**  
Si vous fermez la fenêtre contextuelle avant de créer une GitLab connexion, vous devez actualiser la page.

1. Pour créer une connexion à un GitLab référentiel, sous **Sélectionnez un fournisseur**, sélectionnez **GitLab**. Dans **Connection name (Nom de la connexion)**, saisissez le nom de la connexion que vous souhaitez créer. Choisissez **Connect to (Se connecter à) GitLab**.  
![\[Capture d'écran de la console montrant l'option de connexion sélectionnée pour GitLab.\]](http://docs.aws.amazon.com/fr_fr/codebuild/latest/userguide/images/connections-create-gitlab.png)

1. Lorsque la page de connexion GitLab s'affiche, connectez-vous avec vos informations d'identification, puis choisissez **Se connecter**.

1. Si c'est la première fois que vous autorisez la connexion, une page d'autorisation s'affiche avec un message demandant l'autorisation de connexion pour accéder à votre GitLab compte.

   Choisissez **Authorize** (Autoriser).  
![\[Capture d'écran montrant le message d'autorisation de connexion à votre GitLab compte.\]](http://docs.aws.amazon.com/fr_fr/codebuild/latest/userguide/images/gitlab-authorization.png)

1. Le navigateur revient à la page de la console des connexions. Dans **les paramètres de GitLab connexion**, la nouvelle connexion est affichée dans **Nom de la connexion**.

1. Choisissez **Se connecter**.

   Une fois la GitLab connexion créée avec succès, une bannière de réussite s'affiche en haut de la page. 

1. Sur la page **Créer un projet de construction**, dans la liste déroulante **Connexion par défaut** ou **Connexion personnalisée**, assurez-vous que l'ARN de votre connexion est répertorié. Sinon, cliquez sur le bouton d'actualisation pour le faire apparaître.

1. Dans **Repository**, choisissez le nom de votre projet en GitLab spécifiant le chemin du projet avec l'espace de noms. Par exemple, pour un référentiel au niveau du groupe, entrez le nom du référentiel au format suivant :. `group-name/repository-name` Pour plus d'informations sur le chemin et l'espace de noms, consultez le `path_with_namespace` champ dans [https://docs.gitlab.com/ee/get-single-projectapi/projects.html\$1](https://docs.gitlab.com/ee/api/projects.html#get-single-project). Pour plus d'informations sur l'espace de noms dans GitLab, consultez [https://docs.gitlab.com/ee/user/namespace/](https://docs.gitlab.com/ee/user/namespace/).
**Note**  
Pour les groupes dans GitLab, vous devez spécifier manuellement le chemin du projet avec l'espace de noms. Par exemple, pour un référentiel nommé `myrepo` dans un groupe`mygroup`, entrez ce qui suit :`mygroup/myrepo`. Vous pouvez trouver le chemin du projet avec l'espace de noms dans l'URL dans GitLab.

   

1. Dans **Version source (facultatif)**, entrez un identifiant de pull request, une branche, un identifiant de validation, une balise ou une référence et un identifiant de validation. Pour de plus amples informations, veuillez consulter [Exemple de version source avec AWS CodeBuild](sample-source-version.md).
**Note**  
Nous vous recommandons de choisir des noms de branche Git qui ne ressemblent pas à des validations IDs, tels que `811dd1ba1aba14473856cee38308caed7190c0d` ou`5392f7`. Cela vous permet d'éviter les collisions entre Git Checkout et les validations réelles.

   

1. Dans **Git clone depth (facultatif)**, vous pouvez créer un clone superficiel dont l'historique est tronqué au nombre de validations spécifié. Si vous souhaitez un clone complet, choisissez **Full**.

1. Dans **État de la construction - facultatif**, sélectionnez **Signaler les statuts de construction au fournisseur source lorsque vos builds commencent et se terminent** si vous souhaitez que l'état du début et de la fin de votre build soit signalé à votre fournisseur source.

   Pour pouvoir signaler l'état de construction au fournisseur de source, l'utilisateur associé au fournisseur de source doit avoir un accès en écriture au dépôt. Si l'utilisateur ne dispose pas d'un accès en écriture, l'état de construction ne peut pas être mis à jour. Pour de plus amples informations, veuillez consulter [Accès au fournisseur de source](access-tokens.md).

#### Création d'une connexion à GitLab (CLI)
<a name="connections-gitlab-cli"></a>

Vous pouvez utiliser le AWS Command Line Interface (AWS CLI) pour créer une connexion. 

Pour ce faire, utilisez la commande **create-connection**. 

**Important**  
Une connexion créée via le AWS CLI ou AWS CloudFormation est en `PENDING` état par défaut. Après avoir créé une connexion avec la CLI CloudFormation, utilisez la console pour modifier la connexion afin de définir son état`AVAILABLE`.

**Pour créer une connexion**
+ Suivez les instructions du *guide de l'utilisateur de la console Developer Tools* pour [créer une connexion à GitLab (CLI)](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-create-gitlab.html#connections-create-gitlab-cli).