Вы можете передать роль пользователям, прошедшим проверку подлинности с помощью cognito, а затем разрешить им определенные действия.
Создание ролей для сопоставления ролей
Важно добавитьсоответствующая политика доверия для каждой роли, чтобы Amazon Cognito могла принимать ее только для аутентифицированных пользователей в вашем пуле удостоверений.Вот пример такой политики доверия:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Principal": {
"Federated": "cognito-identity.amazonaws.com"
},
"Action": "sts:AssumeRoleWithWebIdentity",
"Condition": {
"StringEquals": {
"cognito-identity.amazonaws.com:aud": "us-east-1:12345678-dead-beef-cafe-123456790ab"
},
"ForAnyValue:StringLike": {
"cognito-identity.amazonaws.com:amr": "authenticated"
}
}
}
]
}
Предоставление разрешения роли прохода
Чтобы разрешить пользователю IAM устанавливать роли с разрешениями, превышающими права пользователясуществующие разрешения для пула удостоверений, вы предоставляете этому пользователю разрешение iam: PassRole для передачи роли в API set-identity-pool-role.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Stmt1",
"Effect": "Allow",
"Action": [
"iam:PassRole"
],
"Resource": [
"arn:aws:iam::123456789012:role/myS3WriteAccessRole"
]
}
]
}
Дополнительная информация здесь: https://docs.aws.amazon.com/cognito/latest/developerguide/role-based-access-control.html