Amazon web services 如何让ECS任务从另一个AWS帐户承担角色?

Amazon web services 如何让ECS任务从另一个AWS帐户承担角色?,amazon-web-services,amazon-iam,amazon-ecs,Amazon Web Services,Amazon Iam,Amazon Ecs,我有一个审计容器,可以对各种AWSAPI进行扫描。我想让所有这些都在prod帐户中作为ECS任务运行,但扫描其他帐户中的资源。是否可以将其他帐户中的角色设置为任务角色?我已尝试将任务定义中的taskrollearn设置为来自其他帐户的所需角色的ARN,但收到错误消息“角色无效” 我在另一个帐户(111111是prod帐户)的角色上有一个简单的信任关系: { “版本”:“2012-10-17”, “声明”:[ { “效果”:“允许”, “委托人”:{ “服务”:“ecs tasks.amazona

我有一个审计容器,可以对各种AWSAPI进行扫描。我想让所有这些都在prod帐户中作为ECS任务运行,但扫描其他帐户中的资源。是否可以将其他帐户中的角色设置为任务角色?我已尝试将任务定义中的
taskrollearn
设置为来自其他帐户的所需角色的ARN,但收到错误消息“角色无效”

我在另一个帐户(111111是prod帐户)的角色上有一个简单的信任关系:

{
“版本”:“2012-10-17”,
“声明”:[
{
“效果”:“允许”,
“委托人”:{
“服务”:“ecs tasks.amazonaws.com”
},
“操作”:“sts:假定角色”
}
]
}
我在prod帐户中有一个Cloudwatch事件服务角色,它允许
iam:passRole
在另一个帐户上执行此角色。ECS任务执行角色是否需要修改?我的印象是,这只是将日志转发到Cloudwatch日志,并从ECR中提取OCI映像,不需要任何其他权限

这是可能的,还是我只需将具有
sts:assumeRole
权限的任务角色分配给其他帐户,并在容器映像中设置一个垫片,在运行审核之前承担该角色

ECS任务执行角色是否需要修改

将策略添加到您的ECS任务执行角色以承担角色

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "sts:AssumeRole",
            "Resource": "<cross-account role arn here>"
        }
    ]
}
{
“版本”:“2012-10-17”,
“声明”:[
{
“效果”:“允许”,
“行动”:“sts:假设角色”,
“资源”:”
}
]
}
并以编程方式假定:

ECS任务执行角色是否需要修改

将策略添加到您的ECS任务执行角色以承担角色

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "sts:AssumeRole",
            "Resource": "<cross-account role arn here>"
        }
    ]
}
{
“版本”:“2012-10-17”,
“声明”:[
{
“效果”:“允许”,
“行动”:“sts:假设角色”,
“资源”:”
}
]
}
并以编程方式假定: