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.
Rôle EventBridge IAM d'Amazon ECS
Avant de pouvoir utiliser les tâches planifiées Amazon ECS avec des EventBridge règles et des cibles, le EventBridge service a besoin d'autorisations pour exécuter des tâches Amazon ECS en votre nom. Ces autorisations sont fournies par le rôle IAM EventBridge (ecsEventsRole
).
La politique AmazonEC2ContainerServiceEventsRole
est présentée ci-dessous.
- 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 de tâches, d'un rôle de tâche ou d'un remplacement de rôle de tâche, vous devez ajouter des iam:PassRole
autorisations pour chaque rôle d'exécution de tâche, rôle de tâche ou remplacement de rôle de tâche au rôle EventBridge 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 le laisser AWS Management Console créer le EventBridge rôle pour vous lorsque vous configurez une tâche planifiée. Pour de plus amples informations, veuillez consulter Utilisation d'Amazon EventBridge Scheduler pour planifier des tâches Amazon ECS .
Création du EventBridge rôle
Remplacez tout user input
par 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
en utilisant la politique de confiance 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
-
Attachez le AWS AmazonEC2ContainerServiceEventsRole
managé au 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 le flux de travail de politique de confiance personnalisé (https://console.aws.amazon.com/iam/) de la console IAM pour créer le rôle. Pour plus d'informations, consultez la section Création d'un rôle à l'aide de politiques de confiance personnalisées (console) dans le guide de l'utilisateur IAM.
Attachement d'une stratégie au rôle ecsEventsRole
Vous pouvez utiliser les procédures suivantes pour ajouter des autorisations pour le rôle d'exécution de tâches au rôle EventBridge IAM.
- AWS Management Console
-
Pour utiliser l’éditeur de politique JSON afin de créer une politique
Connectez-vous à la console IAM AWS Management Console et ouvrez-la à https://console.aws.amazon.com/iam/l'adresse.
-
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::<aws_account_id>: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 stratégie, associez-la au EventBridge rôle. Pour plus d'informations sur la manière d'associer la politique au rôle, voir Mettre à jour les autorisations pour un rôle dans le Guide de AWS Identity and Access Management l'utilisateur.
- AWS CLI
Remplacez tout user input
par 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 la AWS CLI commande suivante pour créer la stratégie 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 associer la stratégie au rôle EventBridge IAM à l'aide de l'ARN de la stratégie.
aws iam attach-role-policy \
--role-name ecsEventsRole
\
--policy-arn arn:aws:iam:111122223333:aws:policy/eventsTaskExecutionPolicy