FinchRide запускает мобильное приложение, которое должно позволять неаутентифицированным пользователям просматривать общедоступный контент в Amazon S3, а аутентифицированным пользователям — сохранять личные предпочтения в таблице DynamoDB непосредственно из клиента. Команда безопасности требует наименьших привилегий для каждого пользователя без передачи долгосрочных учетных данных в приложении. Какой подход должен рекомендовать Solutions Architect?
Выберите ответ
Нажмите на вариант, чтобы проверить свой ответ.
Правильный ответ: Использовать пул пользователей Amazon Cognito для регистрации/входа и пул идентификаторов Cognito для обмена идентификаторов пользователя или гостя на временные учетные данные AWS. Настроить роли IAM для аутентифицированных и неаутентифицированных идентификаторов и использовать условия политики IAM (например, ${cognito-identity.amazonaws.com:sub}) для ограничения доступа к S3/DynamoDB для каждой идентификации..
Почему это правильный ответ
Этот вариант является наиболее безопасным и соответствующим принципу наименьших привилегий. Пул пользователей Cognito управляет регистрацией и аутентификацией, а пул идентификаторов Cognito предоставляет временные учетные данные AWS для аутентифицированных и неаутентифицированных пользователей, устраняя необходимость в долгосрочных учетных данных в приложении. Роли IAM с условиями политики (например, cognito-identity.amazonaws.com:sub) позволяют точно контролировать доступ к S3 и DynamoDB для каждого пользователя. Использование только пула пользователей Cognito и передача ID token в заголовке Authorization не является стандартным способом прямого доступа к S3 и DynamoDB и требует сложной настройки доверия JWT. Создание REST API Gateway с Lambda увеличивает сложность и затраты, а также не обеспечивает прямого доступа к сервисам из клиента. Вызов STS AssumeRoleWithWebIdentity напрямую из приложения возможен, но пул идентификаторов Cognito упрощает этот процесс, абстрагируя получение временных учетных данных и управление гостевым доступом.
Сдайте экзамен — без бесконечного поиска ответов
Получите все проверенные вопросы и объяснения для этого экзамена в одном месте и сэкономьте часы подготовки. 1000+ сертификаций · 20+ языков · начните бесплатно.
Сдайте экзамен быстрее → Карта не требуется