【以下的问题经过翻译处理】 大家好,
我正在使用Python编写lambda函数,通过EventBridge触发特定事件时创建SQS队列。然后将函数打包为Docker镜像。当我尝试使用create_queue
客户端方法创建队列时,
import boto3
sqs = boto3.client("sqs")
// sqs = boto3.client("sqs", endpoint_url="https://sqs.us-east-1.amazonaws.com")
sqs.create_queue(QueueName="my-test-queue")
我会收到以下任一错误:
An error occurred (AccessDenied) when calling the CreateQueue operation: Access to the resource https://sqs.us-east-1.amazonaws.com/ is denied.
或者
An error occurred (AccessDenied) when calling the CreateQueue operation: Access to the resource https://sqs.amazonaws.com/ is denied.
即使Lambda函数已经附加了正确的sqs:CreateQueue
策略。
{
"Statement": [
{
"Action": [
"sqs:CreateQueue"
],
"Resource": [
"*"
],
"Effect": "Allow"
}
]
}
该Lambda函数未附加到任何VPC。
我尝试使用基于ZIP和控制台创建的函数,但不会出现错误。
有谁有任何想法,为什么我在将函数打包为Docker镜像时会收到该错误?
非常感谢!