Ошибка говорит вам, что ваш пользователь IAM «sms-testing» не имеет права публиковать в SNS (SNS: Publish) на этот ресурс. У вашего пользователя IAM, вероятно, нет SNS: публиковать разрешение вообще, а это значит, что вы ничего не можете публиковать. Если это так, вам просто нужно добавить следующую политику IAM к своему пользователю или добавить политику в группу IAM, из которой принадлежит ваш пользователь IAM.
Приведенная ниже ссылка приведет вас прямо к консоли IAM для редактирования разрешений для пользователя sms-testing. Также ниже приведен пример политики, позволяющей пользователю IAM публиковать что-либо в SNS (SMS, темы, конечные точки и т. Д.).
Если вы хотите немного ограничить права доступа, вы должны изменить «Ресурс» и указать конкретный ресурс SNS, такой как Тема или приложение arn. Если вы не можете редактировать политику пользователя IAM, вам нужно, чтобы ваш администратор добавил эту политику для вас.
Измените IAM пользователя: https://console.aws.amazon.com/iam/home?region=us-east-1#users/sms-testing
политики образца для предоставления SNS Публикация ВСЕХ ресурсов:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"sns:Publish"
],
"Resource": "*"
}
]
}
Поскольку SNS не имеет SMS-ресурс, вы можете сделать немного рубить и «Запретить» публикацию SNS в приложениях «Темы» и «Платформенные приложения», а затем разрешить публикацию для остальных, которая оставляет только SMS (пока).
Вот политика образца позволяет публиковать только SMS и отрицающей публикацию на темы и приложения (нажать уведомления):
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Action": [
"sns:Publish"
],
"Resource": "arn:aws:sns:*:*:*"
},
{
"Effect": "Allow",
"Action": [
"sns:Publish"
],
"Resource": "*"
}
]
}
Надежда, что помогает.
-Dennis
спасибо, авторизация работает с подстановочной политикой. Хотя он немного открыт, хотя, если я правильно понимаю, пользователь iam теперь может опубликовать любую тему в учетной записи. Проблема с указанием темы, по-видимому, заключается в том, что мне нужно добавить подписку на тему типа «SMS», где мне нужно жестко указать номер целевого телефона. Есть ли способ заблокировать разрешение таким образом, что пользователь может отправлять только sms (любому номеру), а не публиковать в какой-либо другой теме? – pulse00
У меня также есть тот же вопрос. @ pulse00, вы могли выяснить, как ограничить доступ к SMS? – kennyjwilli
pules00 - Я обновил исходный ответ с помощью политики, позволяющей публиковать только SMS. kennyjwilli - Разрешить публикацию на любой ресурс, кроме СМС, в настоящее время не представляется возможным. –