に次のポリシー文書があるSQSキューがあります。バケットからS3イベントを受け取るために:S3イベント用に暗号化されたSQSのポリシーステートメントを書くにはどうすればよいですか?
{
"Version": "2008-10-17",
"Id": "example-ID",
"Statement": [
{
"Sid": "example-statement-ID",
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": [
"sqs:SendMessage",
"sqs:ReceiveMessage"
],
"Resource": "arn:aws:sqs:us-east-1:<>:cypher-queue",
"Condition": {
"ArnLike": {
"aws:SourceArn": "arn:aws:s3:*:*:cypher-secondarybucket"
}
}
}
]
}
ここで、キューのサーバー側暗号化(SSE)を有効にしました。そして、私は暗号化のためのポリシーステートメントを書くためにthis docに従った。
{
"Version": "2008-10-17",
"Id": "example-ID",
"Statement": [
{
"Sid": "example-statement-ID",
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": [
"sqs:SendMessage",
"sqs:ReceiveMessage"
],
"Resource": "arn:aws:sqs:us-east-1:<>:cypher-queue",
"Condition": {
"ArnLike": {
"aws:SourceArn": "arn:aws:s3:*:*:cypher-secondarybucket"
}
}
},
{
"Effect": "Allow",
"Action": [
"kms:GenerateDataKey",
"kms:Decrypt"
],
"Resource": "arn:aws:sqs:us-east-1:<>:cypher-queue",
"Condition": {
"ArnLike": {
"aws:SourceArn": "arn:aws:s3:*:*:cypher-secondarybucket"
}
}
},
{
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": "sqs:SendMessage",
"Resource": "arn:aws:sqs:us-east-1:<>:cypher-queue",
"Condition": {
"ArnLike": {
"aws:SourceArn": "arn:aws:s3:*:*:cypher-secondarybucket"
}
}
}
]
}
今、キューはファイルの追加時にバケットからメッセージを受け取っていません。 私はパーミッションに関して何か間違っていますか?
あなたのシナリオを再現しようとすると、私は暗号化されたSQSキューにイベント通知を追加する* *できませんでした。内部エラーメッセージが返されました。しかし、私は[SQS documentation](http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html)からコピーしたポリシーはIAM User SQSキュー自体ではなく、メッセージを送信しています。 –
@JohnRotensteinうん。私の愚かな間違い。 SSE対応キューがS3イベントでサポートされていないことに気付かなかった。今自己回答: – Dawny33