为啥我在 AWS API 上收到“无权执行:ecs:ListTasks on resource:*”异常
Posted
技术标签:
【中文标题】为啥我在 AWS API 上收到“无权执行:ecs:ListTasks on resource:*”异常【英文标题】:Why I am getting "not authorized to perform: ecs:ListTasks on resource: *" exception on AWS API为什么我在 AWS API 上收到“无权执行:ecs:ListTasks on resource:*”异常 【发布时间】:2020-04-23 13:50:42 【问题描述】:我正在尝试从 AWS API 获取在我的 ECS 环境中运行的任务列表,但我一直收到相同的错误:
用户:arn:aws:iam::[my_id]:user/[username] 无权执行:ecs:ListTasks on resource: *
"Version": "2012-10-17",
"Statement": [
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"ecs:RunTask",
"ecs:ListTasks",
"ecs:StartTask",
"ecs:StopTask"
],
"Resource": [
"arn:aws:ecs:us-east-1:[my_id]:task/*",
"arn:aws:ecs:us-east-1:[my_id]:task-definition/*",
"arn:aws:ecs:us-east-1:[my_id]:cluster/*",
"arn:aws:ecs:us-east-1:[my_id]:task-set/*/*/*",
"arn:aws:ecs:us-east-1:[my_id]:container-instance/*",
"arn:aws:ecs:us-east-1:[my_id]:service/*"
]
]
如您所见,我应该使用所有可用资源访问该操作。 我错过了什么?
谢谢。
【问题讨论】:
你传递给 ListTasks 的参数是什么? 【参考方案1】:listTasks
操作仅支持 container instances
作为资源,而不支持 cluster arn
。 cluster arn
只能作为条件添加。
以下政策有效。
"Version": "2012-10-17",
"Statement": [
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": "ecs:ListTasks",
"Resource": "*",
"Condition":
"ArnEquals":
"ecs:cluster": "arn:aws:ecs:ap-southeast-2:[account id]:cluster/MyEcsCluster"
]
参考:
Actions defined by Amazon Elastic Container Service
(检查此参考中的ListTasks
操作)
希望这会有所帮助。
【讨论】:
非常感谢。我需要阅读有关 IAM 和授权控制的更多信息。以上是关于为啥我在 AWS API 上收到“无权执行:ecs:ListTasks on resource:*”异常的主要内容,如果未能解决你的问题,请参考以下文章
为啥我在尝试使用 fetch 连接 Api 时收到“错误请求”错误 400?
为啥我在使用 Google Maps API 时没有收到“同源政策”警告?
为啥我在 s3 上的访问被拒绝(使用适用于 Node.js 的 aws-sdk)?