【发布时间】:2021-01-05 07:41:00
【问题描述】:
我有一个 S3 存储桶,当新项目添加到存储桶时,它会向我的 SQS 队列发送一条消息。然后我的计划是在我的 EC2 服务器上使用 cron 每 10 分钟运行一次脚本,该脚本将检查 SQS 队列中是否存在消息。
我已授予 S3 存储桶将消息发送到我的 SQS 队列的权限,但现在我正在努力如何允许我的 EC2 由于权限而从 SQS 队列中读取消息。
以下是我的政策,我的问题是如何同时允许 IAM 角色和我的 S3 存储桶权限来读取/发送消息。
{
"Version": "2012-10-17",
"Id": "arn:aws:sqs:eu-west-1:446971925991:S3-Probe-Data-Imported/SQSDefaultPolicy",
"Statement": [
{
"Sid": "example-statement-ID",
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": "SQS:*",
"Resource": "arn:aws:sqs:eu-west-1:446971925991:S3-Probe-Data-Imported",
"Condition": {
"ArnLike": {
"aws:SourceArn": "arn:aws:s3:*:*:probe-request-backups"
}
}
}
]
}
我已将 AmazonSQSReadOnlyAccess 策略附加到我的 EC2 服务器将用于从 SQS 队列读取消息的 IAM 角色。
我认为这是可能的,但如果不是,一旦将新项目添加到我的 S3 存储桶中,我如何触发 EC2 脚本(不是 lambda)。
【问题讨论】:
标签: amazon-web-services amazon-s3 amazon-sqs