基于身份的策略不需要指定“主体”,因为它是隐式的。将相同的理由应用于 SNS 访问控制策略(这是基于资源的策略),为什么需要在策略中指定与“资源”相同的 SNS 主题?对于存储桶,“资源”有助于缩小特定前缀等,但在 SNS 访问控制策略中拥有(隐式)“资源”究竟有什么意义?即主题 ARN 被指定为“资源”,但策略附加到同一主题。AWS 文档中的 SNS 访问控制策略示例如下所示,以供参考。
{
"Statement": [{
"Sid": "grant-1234-publish",
"Effect": "Allow",
"Principal": {
"AWS": "111122223333"
},
"Action": ["sns:Publish"],
"Resource": "arn:aws:sns:us-east-2:444455556666:MyTopic"
}]
}