Bonnes pratiques pour les pipelines CI/CD - AWS Conseils prescriptifs

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.

Bonnes pratiques pour les pipelines CI/CD

Les meilleures pratiques pour les pipelines CI/CD complets sont les suivantes :

  • Sécurisation de l'environnement de production — Comme il est possible d'accomplir pratiquement tout ce qui est nécessaire à la maintenance des comptes et de l'environnement à l'aide d'iAC, il est important de tout mettre en œuvre pour sécuriser l'environnement de production en limitant l'accès à la console et aux programmes. Nous recommandons de limiter l'accès à un petit nombre d'utilisateurs, voire à aucun. Lorsque vous déployez iAc via AWS CloudFormation, l'utilisateur a besoin d'autorisations limitées. La plupart des autorisations sont attribuées au CloudFormation service via un rôle de service. Pour plus d'informations, consultez les sections Rôle du service dans la CloudFormation documentation et Implémentation de politiques pour les autorisations du moindre privilège pour. AWS CloudFormation

  • Créez des comptes distincts pour chaque environnement : en dédiant un compte distinct à chaque environnement, vous pouvez simplifier le processus de déploiement et créer des contrôles d'accès précis au niveau du compte. Lorsque plusieurs environnements partagent des ressources, cela réduit l'intégrité de l'environnement en tant qu'unité isolée. Il est préférable de garder les environnements synchronisés et distincts. Cela est d'autant plus important pour l'environnement de production, car tout ce qui se trouve dans ce compte doit être traité comme une ressource de production.

  • Limitez les informations personnelles identifiables (PII) à l'environnement de production — Pour des raisons de sécurité et de protection contre les risques de responsabilité, sécurisez les informations personnelles autant que possible. Lorsque cela est possible dans les environnements inférieurs, utilisez des données anonymisées ou des échantillons au lieu de copier des données potentiellement sensibles depuis l'environnement de production.

  • Révision du code dans les référentiels — Un processus entièrement CI/CD réduit les points d'entrée d'un pipeline à un point unique, et ce point unique doit être sécurisé. Pour cette raison, il est recommandé de demander plusieurs révisions de code avant de fusionner des branches de fonctionnalités dans la branche principale. Ces révisions de code peuvent être effectuées par n'importe quel membre qualifié de l'équipe, mais au moins un membre senior doit les réviser. Le code doit être testé rigoureusement par le réviseur. Après tout, le meilleur moyen de résoudre les problèmes d'un pipeline est d'éviter de les y introduire. Il est également important de résoudre tous les commentaires faits par un réviseur avant de procéder à la fusion. Cette résolution pourrait simplement expliquer pourquoi aucune modification n'est nécessaire, mais répondre à tous les commentaires constitue une vérification supplémentaire importante pour éviter l'introduction de problèmes dans le pipeline.

  • Réalisez de petites fusions fréquentes — Afin de tirer pleinement parti de l'intégration continue, il est également conseillé d'intégrer en permanence les modifications locales dans le pipeline. Après tout, il est bien plus avantageux pour les environnements de développement de rester synchronisés si les environnements locaux les suivent également.

Pour plus de bonnes pratiques pour les pipelines CI/CD, voir Résumé des meilleures pratiques en matière de pratique de l'intégration continue et de la livraison continue sur. AWS