Третья глава: чувак, это всегда IAM
Отказ от ответственности: эта статья является частью серии статей.
3. Путь к AWS SAA: безопасность и бессерверность
4. Путь к AWS SAA: управление доступом к удостоверениям (IAM)
9. Путь к AWS SAA: виртуальные частные облака, виртуальные частные облака
Мы уже рассмотрели хранилище с S3, безопасностью и бессерверностью. Теперь настала очередь управления пользователями, которое в Amazon называется Identity Access Management или IAM.
IAM - это глобальная услуга, не ограниченная регионом, что означает, что изменения в IAM применяются ко всем регионам сразу. Для управления несколькими аккаунтами AWS и объединения всех счетов лучше всего использовать организации AWS.
Ключевые концепции IAM
- Пользователи: все говорит само за себя :) По умолчанию у нового пользователя нет разрешений - после этого все должно быть разрешено.
- Группы: набор пользователей.
- Роли: способ разрешить одному сервису AWS взаимодействовать с другим. Они более безопасны, чем хранение ключей доступа в инстансе EC2. Они также просты в управлении и универсальны.
- Политики: файлы в формате JSON, определяющие разрешения. Программный документ - это список заявлений; каждый из них соответствует запросу API AWS с эффектом, который разрешает или запрещает, и он соответствует их действию. В документации есть несколько примеров - например, для разрешения пользователю IAM доступа к одной из ваших корзин:
{
"Version":"2012-10-17",
"Statement":[
{
"Effect":"Allow",
"Action": "s3:ListAllMyBuckets",
"Resource":"arn:aws:s3:::*"
},
{
"Effect":"Allow",
"Action":["s3:ListBucket","s3:GetBucketLocation"],
"Resource":"arn:aws:s3:::awsexamplebucket1"
},
{
"Effect":"Allow",
"Action":[
"s3:PutObject",
"s3:PutObjectAcl",
"s3:GetObject",
"s3:GetObjectAcl",
"s3:DeleteObject"
],
"Resource":"arn:aws:s3:::awsexamplebucket1/*"
}
]
}
Или, чтобы разрешить группе иметь общую папку в Amazon S3:
{
"Version":"2012-10-17",
"Statement":[
{
"Effect":"Allow",
"Action":[
"s3:PutObject",
"s3:GetObject",
"s3:GetObjectVersion",
"s3:DeleteObject",
"s3:DeleteObjectVersion"
],
"Resource":"arn:aws:s3:::mycorporatebucket/share/marketing/*"
}
]
}
Ресурс - это имя ресурса Amazon или ARN, которое начинается с:
arn: partition: service: region: account_id
И заканчивается, например (обратите внимание, что есть и другие варианты!):
resource_type: ресурс
Некоторые инструменты и советы
- AWS Directory Service: семейство сервисов, управляемых Amazon, которые соединяют ресурсы AWS с локальной службой Active Directory или AD. Данные (т. Е. Пользователи, группы и т. Д.) Будут локальными, и AWS будет управлять развертыванием нескольких зон доступности, установкой исправлений и мониторингом, снимками состояния и т. Д. Обратите внимание, что и Simple AD, и AWS AD Connector совместимы с AD, а Cloud Directory и Cognito - нет.
- Resource Access Manager или RAM: для совместного использования ресурсов между учетными записями.
- Система единого входа: инструмент для централизованного управления пользователями.
Подсказки:
- Если что-то не разрешено явно, то это неявно запрещается.
- Но если это прямо отрицается, то это все.
- Только прикрепленные политики имеют эффект.
- Границы разрешений позволяют делегировать, контролируя максимальное количество разрешений.
Вот и все, ребята! Это теория управления пользователями, необходимая для экзамена SAA, согласно отличному курсу Крооненбурга и Рихмана.
Будьте на связи!
использованная литература
Райан Крооненбург и Марк Ричман, Партнер по архитектуре решений, сертифицированный AWS, SAA-C02, 2021 г.
Бен Пайпер и Дэвид Клинтон, Учебное пособие для сертифицированных архитекторов решений, Sybex, 2019.
Больше контента на plainenglish.io