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_IDfiltres -
Ajoutez
ACTOR_ACCOUNT_IDdes 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_PATHfiltres -
Ajoutez
FILE_PATHdes 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 aubuildspec.ymlfichier à l'aide d'un modèle d'expression régulière tel que^buildspec.yml$, avec laexcludeMatchedPatternproprié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.