我正在尝试使用aws cli来标记lambda函数。但是,我一直得到访问决定错误。我甚至试图在IAM中为用户提供管理员访问权限,但仍然无效。我想其他地方必须配置一些当前覆盖政策的地方
root@fd9f516869e1:~# aws lambda tag-resource --resource $FUNCTION_ARN --tags CURRENT_COMMIT=${CIRCLE_SHA1}
An error occurred (AccessDeniedException) when calling the TagResource operation: User: <user ARN> is not authorized to perform: lambda:TagResource
附加给用户的政策是
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "<SID>",
"Effect": "Allow",
"Action": [
"tag:*",
"lambda:ListTags",
"lambda:TagResource",
"lambda:UntagResource",
"lambda:GetFunction",
"lambda:UpdateFunctionCode"
],
"Resource": [
"<my lambda ARN>"
]
}
]
}
答案 0 :(得分:0)
正如Lambda API Permissions和AWS Services That Work with IAM 与标记相关的调用(ListTags
,TagResources
,UntagResources
)的文档中所述,不能仅限于特定资源。
因此,必须为所有Lambda函数授予标记访问权限。要使其正常运行,您需要将上述政策中的<my lambda ARN>
替换为*
。