Федерация веб-идентификации позволяет упростить аутентификацию и авторизацию для больших групп пользователей. Вы можете пропустить создание отдельных учетных записей и требовать, чтобы пользователи входили в систему поставщика удостоверений, чтобы получить временные учетные данные или токены. Для управления учетными данными используется служба маркеров безопасности AWS (STS). Приложения используют эти токены для взаимодействия со службами.
Федерация веб-идентификации также поддерживает других поставщиков идентификационных данных, таких как Amazon, Google и Facebook.
Функция. При использовании федерация веб-идентификации сначала вызывает провайдера идентификации для аутентификации пользователя и приложения, а провайдер возвращает токен. Это приводит к тому, что приложение вызывает AWS STS и передает токен для ввода. STS авторизует приложение и предоставляет ему временные учетные данные для доступа, которые позволяют приложению использовать роль IAM и получать доступ к ресурсам на основе политики.
Реализация федерации веб-идентификации
Вы должны выполнить следующие три шага перед использованием —
-
Используйте поддерживаемого стороннего поставщика удостоверений, чтобы зарегистрироваться в качестве разработчика.
-
Зарегистрируйте свое приложение у провайдера, чтобы получить идентификатор приложения.
-
Создайте одну или несколько ролей IAM, включая вложение политики. Вы должны использовать роль для каждого поставщика в приложении.
Используйте поддерживаемого стороннего поставщика удостоверений, чтобы зарегистрироваться в качестве разработчика.
Зарегистрируйте свое приложение у провайдера, чтобы получить идентификатор приложения.
Создайте одну или несколько ролей IAM, включая вложение политики. Вы должны использовать роль для каждого поставщика в приложении.
Предположим, что вы используете одну из своих ролей IAM для использования федерации веб-идентификации. Ваше приложение должно затем выполнить трехэтапный процесс —
- Аутентификация
- Получение учетных данных
- Доступ к ресурсам
На первом этапе ваше приложение использует собственный интерфейс для вызова поставщика, а затем управляет процессом токена.
Затем на втором шаге выполняется управление токенами, и ваше приложение должно отправить запрос AssumeRoleWithWebIdentity в AWS STS. Запрос содержит первый токен, идентификатор приложения поставщика и ARN роли IAM. STS предоставляет учетные данные, срок действия которых истекает через определенный период.
На последнем шаге ваше приложение получает ответ от STS, содержащий информацию о доступе к ресурсам DynamoDB. Он состоит из учетных данных, срока действия, роли и идентификатора роли.