View a markdown version of this page

Connexions à l'application Bitbucket - AWS CodeBuild

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.

Connexions à l'application Bitbucket

Vous pouvez utiliser Bitbucket pour vous connecter à CodeBuild. Les connexions à l'application Bitbucket sont prises en charge via AWS CodeConnections.

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.

Étape 1 : créer une connexion à Bitbucket (console)

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

Pour créer une connexion à Bitbucket
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.

Étape 2 : Accorder l'accès au rôle IAM du CodeBuild projet pour utiliser la connexion

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 à votre CodeBuild projet.

  2. 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 : configurer CodeBuild pour utiliser la nouvelle connexion

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

Console de gestion AWS
Pour configurer une connexion en tant qu'identifiant au niveau du compte dans Console de gestion AWS
  1. Pour Source provider (Fournisseur de source), choisissez Bitbucket.

  2. 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.

      2. Pour le type d'identifiant, choisissez CodeConnections.

      3. 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.

      2. 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, consultezConfigurer plusieurs jetons comme informations d'identification au niveau de la source.

Jetons d'actualisation rotatifs Bitbucket OAuth

Atlassian applique désormais des jetons d'actualisation rotatifs à usage unique pour Bitbucket OAuth. Chaque fois que vous utilisez un jeton d'actualisation, Bitbucket l'invalide et en renvoie un nouveau. Pour plus d'informations, consultez la section Jetons d'actualisation à usage unique Bitbucket OAuth (CHANGE-3052) sur le site Web des développeurs d'Atlassian.

Action requise pour les informations d' Manager-stored identification Secrets

Si vous stockez les informations d'identification OAuth de Bitbucket dans Secrets Manager, ajoutez l'secretsmanager:PutSecretValueautorisation à votre CodeBuild rôle de service. Avec cette autorisation, CodeBuild vous pouvez réinscrire le jeton d'actualisation mis à jour dans votre code secret après chaque actualisation du jeton. Sans cette autorisation, la prochaine génération après l'actualisation d'un jeton échoue.

L'exemple de déclaration de politique IAM suivant accorde l'autorisation requise :

{ "Effect": "Allow", "Action": "secretsmanager:PutSecretValue", "Resource": "arn:aws:secretsmanager:*:*:secret:codebuild/*" }

Si vous utilisez CodeBuild-managed cette option, aucune modification n'est nécessaire. CodeBuild gère automatiquement la rotation des jetons.

Migrer vers AWS CodeConnections (recommandé)

Nous vous recommandons de migrer vers Bitbucket AWS CodeConnections pour intégrer Bitbucket. AWS CodeConnections utilise un mécanisme d'autorisation distinct que la rotation des jetons d'actualisation n'affecte pas. Vous n'avez pas besoin de gérer les jetons ou d'ajouter des autorisations.

Pour effectuer la migration vers AWS CodeConnections, procédez comme suit :

  1. Ouvrez la console Outils de développement. Choisissez Paramètres, Connexions, puis Créer une connexion. Sélectionnez Bitbucket comme fournisseur.

  2. Autorisez l' AWS CodeConnections application dans votre espace de travail Bitbucket. Cela nécessite l'autorisation d'administration de l'espace de travail dans Bitbucket.

  3. Ajoutez les autorisations suivantes à votre rôle CodeBuild de service : codeconnections:GetConnectionToken etcodeconnections:GetConnection.

  4. Définissez la connexion comme identifiant par défaut :

    aws codebuild import-source-credentials --auth-type CODECONNECTIONS --server-type BITBUCKET --token <connection-arn>
  5. Tous les projets utilisant les informations d'identification par défaut changent automatiquement. Mettez à jour les projets qui utilisent des informations d'identification personnalisées par projet individuellement. Utilisez la console ou l'UpdateProjectAPI.