Почему политика управления доступом SNS требует указания элемента Resource - разве это не подразумевается?
Политика, основанная на идентификации, не требует указания "Принципала", поскольку это неявно. Применяя такое же обоснование к политике управления доступом SNS (которая является политикой на основе ресурсов), почему требуется указать ту же тему SNS в качестве "Ресурса" в политике? Для сегментов "Ресурс" помогает сужаться до определенных префиксов и т. Д., Но каков именно смысл наличия (неявного) "Ресурса" в политике контроля доступа SNS? т.е. тема ARN указана как "Ресурс", но политика привязана к той же теме. Ниже для справки показан пример политики управления доступом к SNS из документации AWS.
{
"Statement": [{
"Sid": "grant-1234-publish",
"Effect": "Allow",
"Principal": {
"AWS": "111122223333"
},
"Action": ["sns:Publish"],
"Resource": "arn:aws:sns:us-east-2:444455556666:MyTopic"
}]
}
1 ответ
Синтаксис для определения политических заявлений требуетResource
или NotResource
. Из документов:
Заявления должны включать элемент Resource или NotResource.
Поэтому вы должны явно указать это. В темах социальных сетей не используется особый синтаксис политики, который позволил бы им не иметьResource
составная часть.
Таким образом, я не думаю, что в этом есть что-то еще. Это просто синтаксическое требование для правильных формулировок политики.