Rôle IAM Amazon ECS Anywhere
Lorsque vous enregistrez un serveur sur site ou une machine virtuelle (VM) sur votre cluster, le serveur ou la VM nécessite un rôle IAM pour communiquer avec les API AWS. Vous devez uniquement créer ce rôle IAM à une reprise pour chaque compte AWS. Toutefois, ce rôle IAM doit être associé à chaque serveur ou machine virtuelle que vous enregistrez sur un cluster. Ce rôle est le ECSAnywhereRole. Vous pouvez créer ce rôle manuellement. De même, Amazon ECS peut créer le rôle en votre nom lorsque vous enregistrez une instance externe dans la the console. Vous pouvez utiliser la recherche de la console IAM pour rechercher ecsAnywhereRole et voir si votre compte dispose déjà de ce rôle. Pour plus d’informations, consultez la section Recherche dans la console IAM dans le Guide de l’utilisateur IAM.
AWS fournit deux stratégies IAM gérées qui peuvent être utilisées lors de la création du rôle IAM ECS Anywhere, les stratégies AmazonSSMManagedInstanceCore et AmazonEC2ContainerServiceforEC2Role. La stratégie AmazonEC2ContainerServiceforEC2Role inclut des autorisations qui fournissent probablement plus d'accès que vous n'avez besoin. Par conséquent, en fonction de votre cas d'utilisation spécifique, nous vous recommandons de créer une stratégie personnalisée en ajoutant uniquement les autorisations de cette stratégie dont vous avez besoin. Pour de plus amples informations, consultez la section Rôle IAM d'instance de conteneur Amazon ECS.
Le rôle IAM d'exécution de tâche qui accorde à l'agent de conteneur Amazon ECS l'autorisation d'effectuer des appels d'API AWS en votre nom. Lorsqu'un rôle IAM d'exécution de tâche est utilisé, il doit être spécifié dans votre définition de tâche. Pour de plus amples informations, consultez Rôle IAM d'exécution de tâche Amazon ECS.
Le rôle d'exécution de tâche est requis si l'une des conditions suivantes s'applique :
-
Vous envoyez des journaux de conteneur à CloudWatch Logs à l'aide du pilote de journal
awslogs. -
Votre définition de tâche spécifie une image de conteneur hébergée dans un référentiel privé Amazon ECR. Cependant, si le rôle
ECSAnywhereRoleassocié à votre instance externe inclut également les autorisations nécessaires pour extraire des images d’Amazon ECR, alors votre rôle d’exécution de tâche n’a pas besoin de les inclure.
Création du rôle Amazon ECS Anywhere
Remplacez chaque user input par vos propres informations.
-
Créez un fichier local nommé
ssm-trust-policy.jsonavec la stratégie d’approbation suivante : -
Créez le rôle et associez-lui la stratégie d’approbation à l’aide de la commande AWS CLI suivante.
aws iam create-role --role-nameecsAnywhereRole--assume-role-policy-document file://ssm-trust-policy.json -
Attachez la politique gérée par AWS au rôle en utilisant la commande suivante.
aws iam attach-role-policy --role-nameecsAnywhereRole--policy-arn arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore aws iam attach-role-policy --role-nameecsAnywhereRole--policy-arn arn:aws:iam::aws:policy/service-role/AmazonEC2ContainerServiceforEC2Role
Vous pouvez également utiliser le flux de travail de stratégie d’approbation personnalisé IAM pour créer le rôle. Pour plus d’informations, reportez-vous à la section Création d’un rôle à l’aide de politiques de confiance personnalisées (console) dans le Guide de l’utilisateur IAM.