Création de votre environnement AWS conforme aux bonnes pratiques
Pourquoi configurer un environnement AWS multi-comptes ?
AWS vous permet d'expérimenter, d'innover et de mettre à l'échelle plus rapidement, tout en vous fournissant l'environnement le plus flexible et sécurisé. Le compte AWS est un moyen important grâce auquel AWS assure la sécurité de vos applications. Un compte AWS fournit une sécurité naturelle, des barrières d'accès et de facturation pour vos ressources AWS et vous permet d'atteindre une indépendance et une isolation des ressources. Par exemple, des utilisateurs n'ayant pas accès à votre compte ne peuvent accéder à vos ressources par défaut. De même, le coût des ressources AWS que vous consommez est attribué à votre compte. Bien que vous puissiez commencer votre parcours AWS avec un seul compte, AWS vous recommande de configurer plusieurs comptes à mesure que vos charges de travail augmentent en volume et en complexité. L'utilisation d'un environnement multi-comptes est une bonne pratique AWS qui offre plusieurs avantages, notamment :
- Une innovation rapide avec des exigences diverses : vous pouvez attribuer des comptes AWS à des équipes, projets ou produits différents au sein de votre entreprise, en vous assurant que chacun d'entre eux est capable d'innover rapidement tout en autorisant leurs propres exigences de sécurité.
- Facturation simplifiée : l'utilisation de plusieurs comptes AWS simplifie la manière dont vous attribuez vos coûts AWS en permettant d'identifier quelle ligne de produit ou de service est responsable d'une charge AWS.
- Contrôles de sécurité flexibles : vous pouvez utiliser plusieurs comptes AWS pour isoler les charges de travail ou les applications ayant des exigences de sécurité précises, ou nécessitant de respecter des directives strictes en matière de conformité telles que HIPAA ou PCI.
- Adaptation facile aux processus commerciaux : vous pouvez facilement organiser plusieurs comptes AWS de manière à bien refléter les besoins divers des processus commerciaux de votre entreprise ayant des exigences opérationnelles, règlementaires et budgétaires différentes.
Enfin, un environnement AWS multi-comptes vous permet d'utiliser le cloud pour gagner en temps et créer des produits et services différenciés, tout en vous assurant que vous procédez de manière sécurisée, évolutive et résiliente. Comment devez-vous créer votre environnement AWS multi-comptes ? Vous devez certainement vous demander quelle structure de compte utiliser, quelles politiques et barrières de protection mettre en place, ou encore comment configurer votre environnement pour les audits.
La suite de ce guide vous fera découvrir les éléments de création d'un environnement AWS multi-comptes sécurisé et productif, souvent dénommé « zone de destination », comme le recommande AWS. Il s'agit des bonnes pratiques pouvant être utilisées pour créer un cadre initial tout en autorisant la flexibilité au fur et à mesure que vos charges de travail AWS augmentent.
Bonnes pratiques pour configurer votre environnement AWS multi-comptes
La base d'un environnement AWS multi-comptes bien conçu est AWS Organizations, un service AWS qui vous permet de gérer et d'administrer plusieurs comptes de manière centralisée. Avant de commencer, familiarisons-nous avec quelques termes. Une unité d'organisation (UO) est un regroupement logique de comptes dans votre organisation AWS. Les UO vous permettent d'organiser vos comptes sous forme de hiérarchie et de facilement appliquer les contrôles de gestion. Pour appliquer de tels contrôles, utilisez les politiques AWS Organizations. Une politique de contrôle des services (SCP) est une politique qui définit les actions des services AWS telles que l'exécution d'instances Amazon EC2, que les comptes de votre organisation peuvent effectuer.
Envisagez tout d'abord les regroupements de comptes ou UO que vous devez créer. Vos UO doivent être basées sur la fonction ou sur un ensemble courant de contrôles et non pas reproduire la structure de reporting de l'entreprise. AWS recommande d'avoir à l'esprit la sécurité et l'infrastructure lorsque vous commencez. La plupart des entreprises ont des équipes centralisées, qui en leur sein répondent à tous ces besoins. Ainsi, nous recommandons de créer un ensemble d’UO de base pour ces fonctions précises :
- Infrastructure : utilisée pour les services d'infrastructure partagés tels que les réseaux et les services de TI. Créez des comptes pour chaque type de services d'infrastructure dont vous avez besoin.
- Sécurité : utilisée pour les services de sécurité. Créez des comptes pour les archives de journaux, la sécurité en accès en lecture seule, l'outillage de sécurité et les cas d'urgence.
Étant donné que la plupart des entreprises ont des exigences différentes en matière de politique de charges de travail de production, l'infrastructure et la sécurité peuvent avoir imbriqué les UO pour la non-production (SDLC) et la production (Prod). Les comptes dans les UO SDLC hébergent des charges de travail en non-production et ne devraient donc pas dépendre de la production d'autres comptes. Le SDLC peut être divisé en plusieurs UO (par ex. dev et pré-prod), s'il existe des variations dans les politiques d'UO entre les étapes du cycle de vie. Les comptes dans les UO Prod hébergent les charges de travail de production.
Appliquez les politiques au niveau des UO pour administrer l'environnement Prod et SDLC selon vos exigences. Appliquer les politiques au niveau des UO plutôt qu'au niveau des comptes individuels est en général une meilleure pratique, car cela simplifie la gestion des politiques ainsi que tout dépannage potentiel.
Une fois que les principaux services sont en place, nous recommandons de créer des UO qui se rapportent directement à la création ou à la gestion de vos produits et services. De nombreux clients AWS créent ces UO après avoir établi la base.
- Environnement de test (sandbox) : renferme les comptes AWS que les développeurs peuvent utiliser pour mener des essais dans les services AWS. Assurez-vous que ces comptes peuvent être détachés des réseaux internes et configurez un processus pour limiter les dépenses afin d'éviter la surconsommation.
- Charges de travail : contiennent des comptes AWS qui hébergent vos services d’application tournés vers l’extérieur. Vous devez structurer les UO sous les environnements SDLC et Prod (de la même manière que les UO de base) dans le but d'isoler et de contrôler de très près les charges de travail de production.
Maintenant que les UO de base et de production sont créées, nous recommandons d'ajouter des UO supplémentaires pour la maintenance et l'expansion continue, en fonction de vos besoins. Voici quelques thèmes courants tirés des pratiques de clients AWS existants :
- Élaboration de politiques : renferme les comptes AWS dans lesquels vous pouvez tester des modifications de politiques proposées avant de les appliquer dans toute l'organisation. Commencez par mettre en œuvre des modifications au niveau du compte dans l'UO prévue et progressez lentement vers les autres comptes, les autres UO et au sein de toute l'organisation.
- Suspendu : contient les comptes AWS qui ont été fermés et qui attendent d'être supprimés de l'organisation. Attachez un SCP à cette UO qui refuse toute action. Si des comptes ont besoin d'être restaurés, assurez-vous qu'ils soient labelisés avec les détails pour la traçabilité.
- Utilisateurs professionnels particuliers : une UO à accès limité qui contient des comptes AWS pour les utilisateurs professionnels (hormis des développeurs) qui pourraient avoir besoin de créer des applications qui ont trait à la productivité commerciale, par exemple configurer un compartiment S3 afin de partager des rapports ou fichiers avec un partenaire.
- Exceptions : renferme des comptes AWS utilisés dans des cas professionnels qui ont une sécurité hautement personnalisée ou des exigences d'audit, différentes de celles définies dans les UO de charges de travail. Par exemple, configurer un compte AWS spécifiquement pour une nouvelle application ou fonctionnalité confidentielle. Utilisez les SCP au niveau du compte afin de répondre aux besoins personnalisés. Envisagez la configuration d'un système de détection et de réaction en utilisant CloudWatch Events et les règles AWS Config.
- Déploiements : contient des comptes AWS prévus pour les déploiements CI/CD. Vous pouvez créer cette UO si vous disposez d'un modèle de gouvernance et opérationnel différent pour les déploiements CI/CD, en comparaison aux comptes dans les UO de charges de travail (Prod et SDLC). La distribution des CI/CD aide à réduire la dépendance de l'organisation à l'égard d'un environnement CI/CD partagé, opéré par une équipe centrale. Pour chaque ensemble de comptes AWS SDLC/Prod d'une application dans les UO des charges de travail, créez un compte pour CI/CD sous les UO de déploiement.
- Transitoire : il s'agit d'une zone temporaire de réception des comptes et charges de travail existants avant de les acheminer vers des zones standard de votre organisation. Cela peut être dû au fait que les comptes font partie d'une acquisition et étaient précédemment gérés par une tierce partie, ou alors qu’il s’agit de comptes hérités d'une vieille structure d'organisation.
Conclusion
Une stratégie multi-comptes bien conçue vous permet d'innover plus rapidement dans AWS, tout en garantissant que vous répondez à vos besoins de sécurité et de capacité de mise à l’échelle. Le cadre décrit sur cette page représente les bonnes pratiques AWS que vous devez utiliser comme point de départ de votre parcours AWS.
Pour commencer, consultez le guide de démarrage AWS Organizations afin de créer votre propre environnement AWS multi-comptes. Comme alternative, vous pouvez utiliserAWS Control Tower pour vous aider à rapidement configurer un environnement AWS initial sécurisé en quelques clics.