Учетная запись с определенной ролью политики AWS для отказа

#amazon-web-services #amazon-iam

Вопрос:

Я хотел бы создать политику в роли IAM AWS, которая влияет на ЗАПРЕЩЕНИЕ sns:Удаление доступа к определенной учетной записи.

Я пробую это

 {
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Deny",
            "Action": "sns:DeleteTopic",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "aws:userid": [
                        "AROA24JI6FVYT2EIWXNVM:elad",
                        "11111111111"
                    ]
                }
            }
        }
    ]
}
 

Но это не работает.

Кроме того, я хочу сделать то же самое с поставщиком Saml. Возможно ли это?

Спасибо, Элад

Комментарии:

1. «Но это не работает». — не является конкретным. Что именно происходит? Как вы это проверяете? Как можно воспроизвести проблему? Какие-нибудь сообщения об ошибках?

2. После того, как я возьму на себя роль пользователя из учетной записи «11111111111». Я пытаюсь запустить «тему удаления aws sns…», и это удалось. Я бы ожидал, что он получит » не уполномочен выполнять:….».

Ответ №1:

То, о чем вы просите, невозможно или не имеет 100% смысла. Вы не можете запретить доступ к другой учетной записи с помощью роли IAM, потому что пользователи в другой учетной записи не будут использовать эту роль для отправки запроса.

Вот несколько вариантов, которые я могу придумать, но вам, возможно, потребуется предоставить дополнительную информацию о том, как сущности в этой внешней учетной записи делают запросы к вашей учетной записи (предполагая роли, прямые запросы с аутентификацией IAM).

  1. Сущности IAM из внешней учетной записи по умолчанию лишены доступа. Вы можете запретить другим сущностям доступ к вашей теме, добавив в раздел SNS «политику ресурсов», которая предоставляет им разрешения. Вы можете обновить политику ресурсов в своих темах, чтобы гарантировать, что этой учетной записи не будут предоставлены разрешения.
  2. Пользователь/роль в другой учетной записи может выполнять роль в вашей учетной записи, чтобы получить разрешения на удаление темы. В этом случае обновите политику доверия ролей, чтобы пользователи учетной записи не могли выполнять вашу роль.