Meilleures pratiques multi-comptes AWS / Blogs / Perficient

La mise en œuvre de l’accès entre comptes AWS est cruciale pour gérer un environnement cloud sécurisé et évolutif. Cette configuration simplifie le processus de gestion, améliore la sécurité en adhérant au principe du moindre privilège, rationalise les opérations en réduisant le besoin de changer de compte et facilite la conformité et l’audit en centralisant l’accès et le contrôle.
Le site Web d’Imagine GlobalTech est hébergé sur des instances EC2 dans le compte A. L’équipe de gestion DNS de l’entreprise, responsable de la mise à jour et de la gestion des enregistrements DNS, opère dans le compte B à l’aide d’Amazon Route 53. En configurant l’accès entre comptes, l’équipe DNS peut mettre à jour les enregistrements DNS pour refléter les changements dans les adresses IP des instances EC2 ou gérer le routage du trafic sans avoir besoin d’un accès direct à celles-ci. Cette centralisation améliore l’efficacité, renforce la sécurité et garantit que les configurations DNS sont gérées de manière cohérente dans l’infrastructure de l’entreprise.
Comprenons cela à l’aide des exemples ci-dessous :
Scénario : accès entre comptes pour la gestion DNS Route 53
Contexte d’affaires
Votre entreprise, « GlobalTech », dispose d’un environnement AWS multi-comptes géré via AWS Organizations. L’entreprise utilise :
- Compte A : Hébergement d’instances EC2 pour diverses applications.
- Compte B : gestion des enregistrements DNS à l’aide d’Amazon Route 53.
Vous souhaitez configurer l’accès entre comptes afin que Route 53 dans le compte B puisse gérer les enregistrements DNS pour les instances EC2 exécutées dans le compte A. Cela permet à votre équipe de gestion DNS de gérer les configurations DNS de manière centralisée sans nécessiter un accès direct aux instances EC2.
- Conditions préalables
- Présentation de la configuration
- Les meilleures pratiques
- Conclusion
Conditions préalables
- Organisations AWS : GlobalTech utilise AWS Organizations avec une structure d’unités organisationnelles (OU).
- Rôles et politiques IAM : Les rôles et stratégies IAM appropriés doivent être configurés pour autoriser l’accès entre comptes.
- Zone hébergée Route 53 : Les zones hébergées sont configurées dans le compte B.
Présentation de la configuration
Étapes pour mettre en œuvre le scénario
- Créez un rôle IAM dans le compte A (compte d’instances EC2) :
- Connectez-vous à AWS Management Console pour le compte A.
- Accédez à IAM et cliquez sur Rôles, puis Créer un rôle.
- Sélectionnez Entité de confiance :
- Choisissez un autre compte AWS.
- Saisissez l’ID de compte du compte B (compte Route 53).
- Ajouter des autorisations :
- Attachez les stratégies suivantes au rôle :
- AmazonRoute53FullAccess : accorde un accès complet à Route 53.
- Politique personnalisée pour des autorisations spécifiques, si nécessaire.
- Attachez les stratégies suivantes au rôle :
- Nom de rôle:
- Nommer le rôle Route53CrossAccountRole.
- Créer un rôle.
Mettre à jour la relation d’approbation dans le rôle du compte A
- Accédez à l’onglet Relations de confiance pour Route53CrossAccountRole.
- Modifiez la stratégie de confiance pour permettre au compte B d’assumer le rôle :
Créer un rôle IAM dans le compte B (compte Route 53)
- Connectez-vous à AWS Management Console pour Compte B.
- Accédez à IAM et cliquez sur Rôles, puis Créer un rôle.
- Sélectionnez Entité de confiance :
- Choisissez un autre compte AWS.
- Entrez l’ID de compte de Compte A (compte EC2).
- Ajouter des autorisations :
- Attachez les stratégies nécessaires à la gestion de Route 53 (si des autorisations supplémentaires sont requises).
- Nom de rôle:
- Nommez le rôle EC2ManagementRole.
- Créer un rôle.
Configurer la zone hébergée Route 53 dans le compte B
- Connectez-vous à AWS Management Console pour le compte B.
- Accédez à Route 53 et créez ou sélectionnez la zone hébergée existante.
- Ajoutez des enregistrements DNS pointant vers les adresses IP publiques des instances EC2 dans le compte A.
Attribuer un rôle IAM aux instances EC2 dans le compte A
- Connectez-vous à AWS Management Console pour le compte A.
- Accédez à EC2 et sélectionnez les instances que vous souhaitez associer au rôle.
- Cliquez sur Actions > Sécurité > Modifier le rôle IAM.
- Sélectionnez le Route53CrossAccountRole et enregistrez les modifications.
Automatiser les mises à jour DNS (facultatif)
- Utilisez AWS Lambda ou un service similaire pour mettre à jour automatiquement les enregistrements DNS dans Route 53 lorsque les instances EC2 sont lancées ou terminées dans le compte A.
- Assurez-vous que la fonction Lambda assume le Route53CrossAccountRole pour effectuer les appels d’API nécessaires vers Route 53.
Tests et vérification
- Vérifiez l’hypothèse du rôle : assurez-vous que le compte B peut assumer le rôle Route53CrossAccountRole dans le compte A.
- Mettre à jour les enregistrements DNS : essayez de mettre à jour les enregistrements DNS dans Route 53 pour les instances EC2 du compte A.
- Vérifier la résolution DNS : vérifiez que les enregistrements DNS sont correctement résolus en instances EC2 dans le compte A.
Plusieurs scénarios
- Cas d’utilisation: Les développeurs du compte A ont besoin d’un accès temporaire aux ressources du compte B, comme un compartiment S3.
- Cas d’utilisation: L’équipe financière du compte A a besoin d’accéder aux informations de facturation de plusieurs comptes AWS.
- Cas d’utilisation: Activer la communication réseau entre les VPC dans différents comptes AWS
Les meilleures pratiques
Pour garantir une gestion sécurisée et efficace des accès entre comptes dans AWS, suivez ces bonnes pratiques :
1. Utilisez AWS Organizations
- Gestion centralisée : Utilisez AWS Organizations pour gérer plusieurs comptes de manière centralisée, permettant ainsi un meilleur contrôle et une meilleure gouvernance.
- Politiques de contrôle des services (SCP) : Appliquez des SCP pour appliquer les limites d’autorisation et garantir que les comptes disposent uniquement des autorisations nécessaires.
2. Implémenter les rôles IAM
- Rôles entre comptes : Créez des rôles IAM pour un accès entre comptes au lieu d’utiliser des comptes root ou des utilisateurs IAM.
- Hypothèse de rôle : Configurez des relations d’approbation pour permettre aux utilisateurs ou aux services d’un compte d’assumer des rôles dans un autre compte à l’aide de l’API sts : AssumeRole.
3. Principe du moindre privilège
- Autorisations minimales : Accordez uniquement les autorisations nécessaires aux utilisateurs, rôles et services pour effectuer leurs tâches.
- Politiques détaillées : Utilisez des politiques IAM détaillées pour contrôler l’accès à un niveau granulaire.
4. Activer l’authentification multifacteur (MFA)
- MFA pour les opérations sensibles : Pour ajouter une couche de sécurité supplémentaire, exigez MFA pour les rôles et les utilisateurs effectuant des opérations sensibles.
- Application de l’AMF : Utiliser des stratégies IAM pour appliquer l’authentification multifacteur pour des actions ou des appels d’API spécifiques Centraliser la journalisation et la surveillance
- AWS CloudTrail : Activez CloudTrail dans tous les comptes pour capturer et enregistrer tous les appels d’API et activités des utilisateurs.
- Journalisation centralisée : Stockez les journaux CloudTrail dans un compartiment S3 centralisé pour une analyse et une surveillance plus faciles.
- Service de garde Amazon : Activez GuardDuty pour une détection et une surveillance continues des menaces.
5. Établir une architecture réseau sécurisée
- Appairage de VPC et passerelle de transit : Utilisez le peering VPC ou AWS Transit Gateway pour activer une connectivité réseau sécurisée et efficace entre les comptes.
6. Audits de sécurité réguliers
- Contrôles de conformité : Effectuez régulièrement des audits de sécurité et des contrôles de conformité pour garantir que les configurations d’accès entre comptes répondent aux exigences de sécurité et de conformité.
- Meilleures pratiques de sécurité : Mettez régulièrement à jour vos connaissances sur les fonctionnalités de sécurité AWS et suivez les meilleures pratiques de sécurité AWS.
7. Utilisez AWS Trusted Advisor
- Contrôles de sécurité : Utilisez AWS Trusted Advisor pour effectuer des contrôles de sécurité et recevoir des recommandations pour améliorer votre posture de sécurité.
- Recommandations de révision : Examinez régulièrement et appliquez les recommandations fournies par AWS Trusted Advisor.
Pour garantir une gestion sécurisée et efficace des accès entre comptes dans AWS, mettez en œuvre AWS Organizations pour une gestion centralisée, utilisez des rôles IAM pour accorder un accès entre comptes, appliquez le principe du moindre privilège, activez la MFA pour les opérations sensibles, centralisez la journalisation et la surveillance avec CloudTrail et GuardDuty et utilisez AWS Resource Access Manager (RAM) pour un partage sécurisé des ressources. Automatisez la gestion des comptes, établissez une architecture réseau sécurisée, effectuez des audits de sécurité réguliers et adoptez une stratégie de balisage pour l’organisation des ressources. Le respect de ces bonnes pratiques améliorera la sécurité, rationalisera la gestion et maintiendra la conformité dans votre environnement AWS.
Source link