передовая практика по настройке пользователя aws IAM для каждого сервиса aws в производственном развертывании - PullRequest
0 голосов
/ 03 ноября 2019

Я работаю над проектом netcore 2.1 web api. Мне нужно использовать сервисы S3 и SNS aws. Я склонен использовать двух пользователей IAM для каждого сервиса. Как лучше настроить пользователя IAM (accesskey и accesssecret), каждого пользователя для каждой службы aws, например, в проекте netcore api?

1 Ответ

2 голосов
/ 03 ноября 2019

Как лучше настроить пользователя IAM (Accesskey и секретные ключи).

В рекомендациях нет (Accesskey и секретный ключ), только роль IAM, если вы работаете внутри AWS и запускаете свое приложение на сервисах AWS, таких как Ec2 или ECS и т. Д., Никогда не используйте ключи. Я всегда буду предпочитать роль IAM внутри AWS, ваш код не будет зависеть отжестко закодированные ключи, и вы не будете беспокоиться об управлении ключами.

Я склонен использовать двух пользователей IAM для каждой службы

Если оба проекта выполняются внутри одногоВ экземпляре Ec2 лучше использовать одну роль IAM, и у роли есть разрешение для обеих служб, таких как S3 и SNS , нет единого преимущества разделения с использованием секретных ключей и ключей доступа, поскольку оба проекта выполняются на одной машине.

Если оба проекта выполняются на разных машинах, тогда идея имеет смысл, а затем создайте ДВУЮ роль IAM, одну для s3 и одну для SNS, и назначьтетребуемая роль для каждой машины.

укажите действие в роли, которую проект может выполнять над определенной темой s3 или SNS, например

        {
            "Sid": "prod-sns",
            "Effect": "Allow",
            "Action": "sns:*",
            "Resource": "arn:aws:sqs:*:06012345678:prod-*"
        }

После назначения этой роли сервер prodсможет выполнять все действия только с темой SNS, которая начинается с prod, или вы можете создать их более конкретно.

Подробнее о политике SNS и s3 вы можете прочитать здесь.

sns-topic-policy

example-bucket-policy

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...