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.
Amazon ECS EventBridge Rôle IAM
Avant de pouvoir utiliser les tâches planifiées d'Amazon ECS avec EventBridge règles et objectifs, les EventBridge le service a besoin d'autorisations pour exécuter les tâches Amazon ECS en votre nom. Ces autorisations proviennent du EventBridge Rôle IAM (ecsEventsRole).
Le AmazonEC2ContainerServiceEventsRole la politique est la suivante.
- JSON
-
-
{
"Version":"2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": ["ecs:RunTask"],
"Resource": ["*"]
},
{
"Effect": "Allow",
"Action": "iam:PassRole",
"Resource": ["*"],
"Condition": {
"StringLike": {"iam:PassedToService": "ecs-tasks.amazonaws.com"}
}
},
{
"Effect": "Allow",
"Action": "ecs:TagResource",
"Resource": "*",
"Condition": {
"StringEquals": {
"ecs:CreateAction": ["RunTask"]
}
}
}
]
}
Si vos tâches planifiées nécessitent l'utilisation du rôle d'exécution des tâches, d'un rôle de tâche ou d'un remplacement de rôle de tâche, vous devez ajouter iam:PassRole les autorisations pour chaque rôle d'exécution de tâche, rôle de tâche ou rôle de tâche sont remplacées par EventBridge Rôle IAM. Pour plus d'informations sur le rôle d'exécution de tâche, consultez Rôle IAM d'exécution de tâche Amazon ECS.
Spécifiez l'ARN complet du rôle d'exécution de tâche ou du remplacement de rôle de tâche.
- JSON
-
-
{
"Version":"2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "iam:PassRole",
"Resource": [
"arn:aws:iam::111122223333:role/ecsTaskExecutionRole_or_TaskRole_name"
]
}
]
}
Vous pouvez choisir de laisser Console de gestion AWS créer le EventBridge rôle qui vous est attribué lorsque vous configurez une tâche planifiée. Pour plus d’informations, consultez À l'aide d'Amazon EventBridge Planificateur pour planifier les tâches Amazon ECS.
Création du EventBridge rôle
Remplacez tout user input avec vos propres informations.
-
Créez un fichier nommé eventbridge-trust-policy.json contenant la stratégie d'approbation à utiliser pour le rôle IAM. Le fichier doit contenir ce qui suit :
- JSON
-
-
{
"Version":"2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Principal": {
"Service": "events.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
-
Utilisez la commande suivante pour créer un rôle IAM nommé ecsEventsRole à l’aide de la stratégie d’approbation que vous avez créée à l’étape précédente.
aws iam create-role \
--role-name ecsEventsRole \
--assume-role-policy-document file://eventbridge-trust-policy.json
-
Joignez le AWS géré AmazonEC2ContainerServiceEventsRole à la ecsEventsRole rôle à l'aide de la commande suivante.
aws iam attach-role-policy \
--role-name ecsEventsRole \
--policy-arn arn:aws:iam::aws:policy/service-role/AmazonEC2ContainerServiceEventsRole
Vous pouvez également utiliser la console IAM Politique de confiance personnalisée flux de travail (https://console.aws.amazon.com/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.
Joindre une politique au ecsEventsRole rôle
Vous pouvez utiliser les procédures suivantes pour ajouter des autorisations pour le rôle d'exécution des tâches dans EventBridge Rôle IAM.
- Console de gestion AWS
-
Pour utiliser l’éditeur de politique JSON afin de créer une politique
Connectez-vous au Console de gestion AWS et ouvrez la console IAM à l'adresse https://console.aws.amazon.com/iam/.
-
Dans le panneau de navigation de gauche, sélectionnez Policies (Politiques).
Si vous sélectionnez Politiques pour la première fois, la page Bienvenue dans les politiques gérées s’affiche. Sélectionnez Mise en route.
-
En haut de la page, sélectionnez Créer une politique.
-
Dans la section Éditeur de politique, choisissez l’option JSON.
-
Entrez le document de politique JSON suivant :
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "iam:PassRole",
"Resource": ["arn:aws:iam::111122223333:role/<ecsTaskExecutionRole_or_TaskRole_name>"]
}
]
}
-
Choisissez Suivant.
Vous pouvez basculer à tout moment entre les options des éditeurs visuel et JSON. Toutefois, si vous apportez des modifications ou si vous choisissez Suivant dans l’éditeur visuel, IAM peut restructurer votre politique afin de l’optimiser pour l’éditeur visuel. Pour plus d’informations, consultez la page Restructuration de politique dans le Guide de l’utilisateur IAM.
-
Sur la page Vérifier et créer, saisissez un Nom de politique et une Description (facultative) pour la politique que vous créez. Vérifiez les Autorisations définies dans cette politique pour voir les autorisations accordées par votre politique.
-
Choisissez Create policy (Créer une politique) pour enregistrer votre nouvelle politique.
Après avoir créé la politique, joignez-la au EventBridge rôle. Pour plus d’informations sur la manière d’associer une politique à un rôle, consultez la section Mise à jour des autorisations pour un rôle dans le Guide de l’utilisateur Gestion des identités et des accès AWS .
- AWS CLI
Remplacez tout user input avec vos propres informations.
-
Créez un fichier nommé ev-iam-passrole.json avec le contenu suivant.
JSON
- JSON
-
{
"Version":"2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "iam:PassRole",
"Resource": [
"arn:aws:iam::111122223333:role/ecsTaskExecutionRole_or_TaskRole_name"
]
}
]
}
-
Utilisez ce qui suit AWS CLI commande pour créer la politique IAM à l'aide du fichier de document de stratégie JSON.
aws iam create-policy \
--policy-name eventsTaskExecutionPolicy \
--policy-document file://ev-iam-passrole.json
-
Récupérez l’ARN de la politique IAM que vous avez créée à l’aide de la commande suivante.
aws iam list-policies --scope Local --query 'Policies[?PolicyName==`eventsTaskExecutionPolicy`].Arn'
-
Utilisez la commande suivante pour joindre la politique au EventBridge Rôle IAM à l'aide de l'ARN de stratégie.
aws iam attach-role-policy \
--role-name ecsEventsRole \
--policy-arn arn:aws:iam:111122223333:aws:policy/eventsTaskExecutionPolicy