Сводка Пользователь не может опубликовать sh в sns даже после предоставления всех разрешений.
Описание: Используя облачную информацию, я создал SNS topi c и SNS topi c policy
TopicNameSNS:
Type: 'AWS::SNS::Topic'
Properties:
KmsMasterKeyId: 'alias/aws/sns'
TopicName: TopicNameSNS
TopicNameSNSTopicPolicy:
Type: 'AWS::SNS::TopicPolicy'
Properties:
Topics:
- {Ref: TopicNameSNS}
PolicyDocument:
Version: '2012-10-17'
Statement:
- Sid: 'Allow publishing to the topic'
Action:
- sns:Publish
Effect: Allow
Resource: {Ref: TopicNameSNS}
Principal:
AWS:
- 'arn:aws:iam::<account_1_id>:user/<account_1_user_name>'
Этот шаблон облачной информации используется для создания этих ресурсов в account_2
На моем терминале с использованием учетных данных для account_1
i я пытаюсь опубликовать sh сообщение для sns topi c, но получаю ошибку авторизации.
Команда:
aws sns publish \
--topic-arn "arn:aws:sns:us-west-2:<account_2>:TopicNameSNS" \
--message file://sns_message.txt
результат:
An error occurred (AuthorizationError) when calling the Publish operation: User: arn:aws:iam::<account_1>:user/<account_1_user_name>
is not authorized to perform: SNS:Publish on resource: arn:aws:sns:us-west-2:<account_2>:TopicNameSNS
Похоже, политика topi c просто не работает. Я также добавил новую политику для пользователя
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": "sns:Publish",
"Resource": "arn:aws:sns:us-west-2:<account_2>:TopicNameSNS"
}
]
}
Но я все еще получаю ту же ошибку.
Вопрос:
Как разрешить пользователю публиковать sh сообщений в sns topi c? Я бы предпочел использовать политику topi c, но я также могу изменить политику пользователя iam, если политика topi c невозможна.