View a markdown version of this page

Utilisez les webhooks avec AWS CodeBuild - 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.

Utilisez les webhooks avec AWS CodeBuild

AWS CodeBuild prend en charge l'intégration des GitHub webhooks avec GitHub Enterprise Server GitLab, GitLab Self Managed et Bitbucket.

Meilleures pratiques pour utiliser les webhooks avec AWS CodeBuild

Pour les projets qui utilisent des référentiels publics pour configurer des webhooks, nous recommandons les options suivantes :

Configurer des ACTOR_ACCOUNT_ID filtres

Ajoutez ACTOR_ACCOUNT_ID des filtres aux groupes de filtres Webhook de votre projet pour spécifier quels utilisateurs peuvent déclencher une génération. Chaque événement Webhook envoyé CodeBuild est accompagné d'informations sur l'expéditeur qui spécifient l'identifiant de l'acteur. CodeBuild filtrera les webhooks en fonction du modèle d'expression régulière fourni dans les filtres. Vous pouvez spécifier les utilisateurs spécifiques autorisés à déclencher des builds à l'aide de ce filtre. Pour plus d’informations, consultez GitHub événements Webhook et Événements du webhook Bitbucket.

Configurer des FILE_PATH filtres

Ajoutez FILE_PATH des filtres aux groupes de filtres Webhook de votre projet pour inclure ou exclure les fichiers susceptibles de déclencher une génération en cas de modification. Par exemple, vous pouvez refuser les demandes de génération pour des modifications apportées au buildspec.yml fichier à l'aide d'un modèle d'expression régulière tel que^buildspec.yml$, avec la excludeMatchedPattern propriété. Pour plus d’informations, consultez GitHub événements Webhook et Événements du webhook Bitbucket.

Réduisez les autorisations pour votre rôle IAM de build

Les builds déclenchés par un webhook utilisent le rôle de service IAM spécifié dans le projet. Nous vous recommandons de définir les autorisations du rôle de service sur l'ensemble minimum d'autorisations requis pour exécuter la compilation. Par exemple, dans un scénario de test et de déploiement, créez un projet pour les tests et un autre pour le déploiement. Le projet de test accepte les versions de webhook à partir du référentiel, mais ne fournit aucune autorisation d'écriture sur vos ressources. Le projet de déploiement fournit des autorisations d'écriture sur vos ressources, et le filtre Webhook est configuré pour autoriser uniquement les utilisateurs de confiance à déclencher des builds.

Utilisez une spécification de construction en ligne ou stockée sur Amazon S3

Si vous définissez votre buildspec en ligne dans le projet lui-même, ou si vous stockez le fichier buildspec dans un bucket Amazon S3, le fichier buildspec n'est visible que par le propriétaire du projet. Cela empêche les pull requests d'apporter des modifications de code au fichier buildspec et de déclencher des builds indésirables. Pour plus d’informations, consultez ProjectSource.buildspec dans la Référence d’API CodeBuild.