Une entreprise mondiale utilise AWS Control Tower et dispose d'un compte DevOps centralisé avec des pipelines CI/CD qui déploient des applications dans des comptes d'application. Un projet CodeBuild dans le compte DevOps centralisé utilise un rôle de service et tente de déployer une application sur un cluster EKS dans un compte d'application. Le déploiement échoue avec une erreur Unauthorized lorsque CodeBuild tente d'accéder au cluster EKS inter-comptes. Quelle modification corrigera l'erreur d'autorisation ?
Choisissez une réponse
Appuyez sur une option pour vérifier votre réponse.
Bonne réponse : Dans le compte d'application, mettez à jour la politique d'approbation du rôle IAM de déploiement pour faire confiance au compte DevOps centralisé (autoriser sts:AssumeRole), donnez à ce rôle les autorisations requises pour le cluster EKS et mappez le rôle dans le ConfigMap aws-auth du cluster aux autorisations système Kubernetes appropriées..
Pourquoi c'est la réponse
L'erreur "Unauthorized" indique que le rôle CodeBuild dans le compte DevOps n'a pas les permissions nécessaires pour interagir avec le cluster EKS dans le compte d'application. Pour résoudre ce problème, il faut établir une relation d'approbation inter-comptes. La bonne approche consiste à créer un rôle IAM dans le compte d'application (le compte cible) qui a une politique d'approbation permettant au compte DevOps (le compte appelant) d'assumer ce rôle via sts:AssumeRole. Ce rôle dans le compte d'application doit ensuite être doté des autorisations nécessaires pour gérer les ressources EKS. Enfin, pour qu'EKS reconnaisse ce rôle, il doit être mappé dans le ConfigMap aws-auth du cluster EKS aux autorisations Kubernetes appropriées. Les autres options sont incorrectes car : Modifier la politique d'approbation du rôle dans le compte DevOps pour faire confiance au compte d'application ne résout pas le problème d'accès, car le rôle CodeBuild a besoin d'assumer un rôle dans le compte cible. Utiliser sts:AssumeRoleWithSAML est inapproprié ici ; sts:AssumeRole est la méthode standard pour l'accès inter-comptes entre services AWS. Faire confiance au compte de gestion AWS Control Tower n'est pas la bonne approche. Le compte DevOps est celui qui initie l'action, il doit donc être autorisé à assumer un rôle dans le compte d'application.
Réussissez votre examen — sans la chasse aux réponses interminable
Obtenez toutes les questions et explications vérifiées pour cet examen en un seul endroit, et économisez des heures de préparation. Plus de 1 000 certifications · Plus de 20 langues · Gratuit pour commencer.
Réussissez votre examen plus rapidement → Pas de carte requise