STS, Policies Flashcards

1
Q

…- это Сервис для получения …
для доступа к AWS сервисам
на время от … до …

A

STS
временных Security Credentials
от 15 до 60 минут

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Как называется API вызов
получить детали про своего IAM User’а и его Role (”кто я?”)

A

GetCallerIdentity

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Как называется API вызов
декодировать Error сообщение, если запрос на авторизацию отклонён (denied)

A

DecodeAuthorizationMessage

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Какие API вызовы есть для
“получить временные credentials”

A
  • AssumeRole (может быть Cross Account)
  • AssumeRoleWithSAML
  • AssumeRoleWithIdentity - Facebook, Google, OIDC
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Как использовать STS для AssumeRole пошагово

A
  1. Объявить IAM Role в своём аккаунте (или cross-account)
  2. Объявить, какие Principles (пользователи каких IAM User Groups) могут assume’ать эту роль в Trust Relationship
  3. Выполнять AssumeRole API call в сервис STS для получения временных Credentials
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Какой API вызов выполняется, чтобы получить временные креды при активном MFA?

A

Используем GetSessionToken API call в сервис STS

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Что возвращает операция GetSessionToken?

A
  • Secret Key
  • Access ID
  • Session Token
  • Expiration Date
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Что должно быть в объявлении Policy у Роли, которую мы асьюмаем при включенном MFA?

A

Должен быть Condition
aws:MultiFactorAuthPresent: true

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Какие виды Policies бывают?
Кто их создаёт?
Какие use-cases?
Можно ли их повторно использовать?
Есть ли система контроля версий и аудит?
Есть ли ограничения по размеру Policy?

A

Managed Policies
- Предопределённые роли, которые предоставляет AWS из коробки
- Подходят для Power Users и Administrators
- AWS обновляет их, когда появляются новые сервисы

Customer Managed Policies
- Мы сами объявляем эти Policies
- Есть система контроля версий (rollback, track author of changes)

Inline Policies
- Строго one-to-one отношение между Policy и Principal
- no rollback, no audit
- Удаление IAM Principal’а автоматически удалит его Inline Policy
- Есть ограничение по длине Inline Policy 2 KB , поэтому НЕ получится дать много

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Что такое Dynamic Policy?

A

IAM Policy с использованием ${aws:username} (policy variable)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Кому нужны IAM Roles

A
  • EC2 instance
  • Lambda Function
  • ECS Task (дополнительно указываем ECS_ENABLE_IAM_ROLE = true)
  • CodeBuild сервис целиком
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Какие условия необходимо соблюсти, чтобы пользователь мог назначить роль сервису?

A
  • Пользователь имеет право передавать эту IAM Role сервису (EC2 instance’у)
  • IAM Role разрешает асьюмать себя этому Principal’у (всем EC2 instance’ам)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Что такое iam:PassRole?

A

Когда мы создаём экземпляр AWS сервиса (например, EC2 instance), то мы указываем его IAM Role

  • Говорят, мы “передаём ему роль” (назначаем роль) - то есть Pass IAM Role
  • Чтобы это сделать у нашего IAM User’а должна быть Policy,
    которая разрешает делать Action iam:PassRole для определённой роли S3Access
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Что такое Trust Policy?
Какой там API вызов?

A

У каждой IAM Role помимо Permissions (списка обычных Policies) есть Trust Relationship

Он выглядит как обычная JSON Policy
Содержит информацию о том, какой сервис (Лямбда функция, EC2 instance) может асьюмать эту роль

sts:AssumeRole

How well did you know this?
1
Not at all
2
3
4
5
Perfectly