AWS 文档包含不同 SNS 访问控制配置的示例。
有两个类似的配置示例:
第一个允许将通知从另一个账户的 S3 存储桶发布到 SNS 主题:
{
"Effect": "Allow",
"Principal": {
"Service": "s3.amazonaws.com"
},
"Action": "sns:Publish",
"Resource": "arn:aws:sns:us-east-2:111122223333:MyTopic",
"Condition": {
"StringEquals": {
"AWS:SourceAccount": "444455556666"
}
}
}
第二个允许将通知从另一个帐户的 SES 电子邮件发布到 SNS 主题:
{
"Effect": "Allow",
"Principal": {
"Service": "ses.amazonaws.com"
},
"Action": "SNS:Publish",
"Resource": "arn:aws:sns:us-east-2:444455556666:MyTopic",
"Condition": {
"StringEquals": {
"aws:SourceOwner": "111122223333"
}
}
}
不同之处在于第一个示例使用aws:SourceAccount
,第二个示例使用aws:SourceOwner
.
该文档有一个名为“ aws:SourceAccount 与 aws:SourceOwner ”的专用段落,但我仍不清楚这两个语句之间的区别。
您能否澄清政策声明aws:SourceAccount
和aws:SourceOwner
政策声明之间的区别?