gpt4 book ai didi

amazon-s3 - S3 跨账户通知

转载 作者:行者123 更新时间:2023-12-03 06:54:57 26 4
gpt4 key购买 nike

可以将 S3 事件从帐户 A 发送到帐户 B 中的 SQS 主题。但是,我能够实现此目的的唯一方法是在 SQS 中打开 sendMessage 操作的权限以允许每个人访问。

是否可以配置 S3 事件以将消息发送到不同的帐户,并对 SQS 主题设置一些权限限制?

例如,如果我尝试限制对特定帐户(例如 123456789012)的访问,当我尝试保存事件时,我会在 S3 控制台中收到错误:“无法验证以下目标配置:目标队列上的权限不允许 S3 从此存储桶发布通知”

{
"Version": "2012-10-17",
"Id": "sqs-permission",
"Statement": [
{
"Sid": "sqs-permision-statement",
"Effect": "Allow",
"Principal": {
"AWS": "123456789012"
},
"Action": "SQS:SendMessage",
"Resource": "arn:aws:sqs:us-east-1:210987654321:my-queue"
}
]
}

最佳答案

根据documented example ,需要授权给S3,而不是拥有该Bucket的账户。

"Principal": {
"AWS": "*"
},
...
"Condition": {
"ArnLike": {
"aws:SourceArn": "arn:aws:s3:*:*:bucket-name"
}
}

* 主体似乎异常宽松,但可能的解释是 aws:SourceArn 不是一个可能被恶意用户欺骗的值,至少,比如说,aws:SourceIp

相比之下,SNS 示例显示了这个原理,如果它适用于 SQS 通知,这似乎更合适:

"Principal": {
"Service": "s3.amazonaws.com"
},

您仍然希望包含 Condition block 。

关于amazon-s3 - S3 跨账户通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32960220/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com