[ aws . cognito-idp ]
respond-to-auth-challenge
Описание
Некоторые API-операции в пользовательском пуле генерируют вызов, например, запрос на ввод кода MFA, для аутентификации устройства, минуя MFA, или для пользовательского вызова аутентификации. API-запрос RespondToAuthChallenge предоставляет ответ на этот вызов, например, код или безопасный удаленный пароль (SRP). Параметры ответа на вызов аутентификации зависят от типа вызова.
Дополнительную информацию о пользовательских вызовах аутентификации см. в разделе Триггеры Lambda пользовательского вызова аутентификации.
Примечание
Amazon Cognito не оценивает политики управления идентификацией и доступом (IAM) в запросах для этой API-операции. Для этой операции нельзя использовать учетные данные IAM для авторизации запросов и нельзя предоставлять разрешения IAM в политиках. Дополнительную информацию об моделях авторизации в Amazon Cognito см. в разделе Использование API-интерфейсов и конечных точек пользовательских пулов Amazon Cognito.Примечание
Данное действие может генерировать SMS-сообщение. Начиная с 1 июня 2021 года, операторы связи США требуют регистрации номера отправки, прежде чем вы сможете отправлять SMS-сообщения на номера телефонов в США. Если вы используете SMS-сообщения в Amazon Cognito, вы должны зарегистрировать номер телефона в Amazon Pinpoint . Amazon Cognito автоматически использует зарегистрированный номер. В противном случае пользователи Amazon Cognito, которым необходимо получать SMS-сообщения, могут не иметь возможности зарегистрироваться, активировать свои учетные записи или войти в систему.
Если вы никогда не использовали SMS-сообщения с Amazon Cognito или любой другой службой Amazon Web Services, Amazon Simple Notification Service может поместить вашу учетную запись в песочницу SMS. В режиме песочницы вы можете отправлять сообщения только на проверенные номера телефонов. После тестирования приложения в среде песочницы вы можете перейти из песочницы в производственную среду. Дополнительную информацию см. в разделе Настройки SMS-сообщений для пользовательских пулов Amazon Cognito в руководстве разработчика Amazon Cognito.
См. также: Документацию API AWS
Синтаксис
respond-to-auth-challenge
--client-id <value>
--challenge-name <value>
[--session <value>]
[--challenge-responses <value>]
[--analytics-metadata <value>]
[--user-context-data <value>]
[--client-metadata <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--debug]
[--endpoint-url <value>]
[--no-verify-ssl]
[--no-paginate]
[--output <value>]
[--query <value>]
[--profile <value>]
[--region <value>]
[--version <value>]
[--color <value>]
[--no-sign-request]
[--ca-bundle <value>]
[--cli-read-timeout <value>]
[--cli-connect-timeout <value>]
[--cli-binary-format <value>]
[--no-cli-pager]
[--cli-auto-prompt]
[--no-cli-auto-prompt]
Параметры
--client-id (строка)
--challenge-name (строка)
Название запрошенной проверки.
Примечание
Вы не можете ответить на проверкуADMIN_NO_SRP_AUTH с помощью данной операции.Возможные проверки включают:
Примечание
Все следующие проверки требуютUSERNAME и, если у клиента приложения есть секретный ключ, SECRET_HASH в параметрах.-
WEB_AUTHN: Ответьте на проверку результатами успешной аутентификации с помощью аутентификатора WebAuthn или ключа доступа. Примерами аутентификаторов WebAuthn являются биометрические устройства и защищённые ключи. -
PASSWORD: Ответ с параметрамиUSER_PASSWORD_AUTH:USERNAME(обязательно),PASSWORD(обязательно),SECRET_HASH(обязательно, если у клиента приложения настроен секретный ключ),DEVICE_KEY. -
PASSWORD_SRP: Ответ с параметрамиUSER_SRP_AUTH:USERNAME(обязательно),SRP_A(обязательно),SECRET_HASH(обязательно, если у клиента приложения настроен секретный ключ),DEVICE_KEY. -
SELECT_CHALLENGE: Ответ на проверку сUSERNAMEиANSWER, соответствующим одному из типов проверок в параметре ответаAvailableChallenges. -
SMS_MFA: Ответ сSMS_MFA_CODE, отправленным вашим пулом пользователей в SMS-сообщении. -
EMAIL_OTP: Ответ сEMAIL_OTP_CODE, отправленным вашим пулом пользователей в электронном письме. -
PASSWORD_VERIFIER: Ответ сPASSWORD_CLAIM_SIGNATURE,PASSWORD_CLAIM_SECRET_BLOCKиTIMESTAMPпосле вычислений SRP на стороне клиента. -
CUSTOM_CHALLENGE: Возвращается, если ваш пользовательский поток аутентификации определяет, что пользователю нужно пройти ещё одну проверку перед выдачей токенов. Параметры проверки определяются вашей функцией Lambda. -
DEVICE_SRP_AUTH: Ответ с начальными параметрами аутентификации SRP для устройства. Дополнительная информация доступна в разделе Вход с устройством. -
DEVICE_PASSWORD_VERIFIER: Ответ сPASSWORD_CLAIM_SIGNATURE,PASSWORD_CLAIM_SECRET_BLOCKиTIMESTAMPпосле вычислений SRP на стороне клиента. Дополнительная информация доступна в разделе Вход с устройством. -
NEW_PASSWORD_REQUIRED: Для пользователей, которым требуется сменить пароль после успешного первого входа. Ответьте на эту проверку сNEW_PASSWORDи любыми необходимыми атрибутами, возвращёнными Amazon Cognito в параметреrequiredAttributes. Вы также можете установить значения для атрибутов, которые не являются обязательными для вашего пула пользователей и которые могут быть записаны вашим клиентом приложения. Amazon Cognito возвращает эту проверку только для пользователей с временными паролями. При создании пользователей без пароля необходимо предоставить значения для всех необходимых атрибутов.
Примечание
При ответе на проверкуNEW_PASSWORD_REQUIRED вы не можете изменить обязательный атрибут, который уже имеет значение. В AdminRespondToAuthChallenge или RespondToAuthChallenge установите значение для любых ключей, возвращённых Amazon Cognito в параметре requiredAttributes, а затем используйте операцию API AdminUpdateUserAttributes или UpdateUserAttributes для изменения значения дополнительных атрибутов.-
MFA_SETUP: Для пользователей, которым требуется настроить фактор MFA перед входом. Типы MFA, активированные для пула пользователей, будут перечислены в значении параметра проверкиMFAS_CAN_SETUP. Для настройки MFA с временным паролем (TOTP) используйте сессию, возвращённую в данной проверке изInitiateAuthилиAdminInitiateAuthв качестве входных данных дляAssociateSoftwareToken. Затем используйте сессию, возвращённуюVerifySoftwareToken, в качестве входных данных дляRespondToAuthChallengeилиAdminRespondToAuthChallengeс именем проверкиMFA_SETUPдля завершения входа. Для настройки SMS или email MFA, соберите атрибутphone_numberилиemailдля пользователя. Затем перезапустите поток аутентификации с запросомInitiateAuthилиAdminInitiateAuth.
Возможные значения:
SMS_MFAEMAIL_OTPSOFTWARE_TOKEN_MFASELECT_MFA_TYPEMFA_SETUPPASSWORD_VERIFIERCUSTOM_CHALLENGESELECT_CHALLENGEDEVICE_SRP_AUTHDEVICE_PASSWORD_VERIFIERADMIN_NO_SRP_AUTHNEW_PASSWORD_REQUIREDSMS_OTPPASSWORDWEB_AUTHNPASSWORD_SRP
--session (строка)
AdminInitiateAuth или AdminRespondToAuthChallenge приводит к тому, что ваше приложение должно пройти ещё одну проверку, Amazon Cognito возвращает сессию с другими параметрами проверки. Отправьте этот идентификатор сессии без изменений в следующий запрос AdminRespondToAuthChallenge.--challenge-responses (словарь)
Ответы на проверки, полученные в предыдущем запросе. У каждой проверки есть свои необходимые параметры ответа. Ниже приведены примеры фрагментов JSON запросов, которые демонстрируют параметры ответа на проверки.
Предупреждение
Вы должны предоставить параметр SECRET_HASH во всех ответах на проверки для клиентов приложения, у которых есть секретный ключ. Включите DEVICE_KEY для аутентификации устройств.
SELECT_CHALLENGE
"ChallengeName": "SELECT_CHALLENGE", "ChallengeResponses": { "USERNAME": "[username]", "ANSWER": "[Challenge name]"}
Доступные проверки — PASSWORD , PASSWORD_SRP , EMAIL_OTP , SMS_OTP и WEB_AUTHN.
Завершите аутентификацию в ответе SELECT_CHALLENGE для PASSWORD , PASSWORD_SRP и WEB_AUTHN:
-
"ChallengeName": "SELECT_CHALLENGE", "ChallengeResponses": { "ANSWER": "WEB_AUTHN", "USERNAME": "[username]", "CREDENTIAL": "[AuthenticationResponseJSON]"}См. AuthenticationResponseJSON. "ChallengeName": "SELECT_CHALLENGE", "ChallengeResponses": { "ANSWER": "PASSWORD", "USERNAME": "[username]", "PASSWORD": "[password]"}"ChallengeName": "SELECT_CHALLENGE", "ChallengeResponses": { "ANSWER": "PASSWORD_SRP", "USERNAME": "[username]", "SRP_A": "[SRP_A]"}
Для SMS_OTP и EMAIL_OTP ответьте с именем пользователя и ответом. Ваш пул пользователей отправит код пользователю для отправки в следующем ответе на проверку.
-
"ChallengeName": "SELECT_CHALLENGE", "ChallengeResponses": { "ANSWER": "SMS_OTP", "USERNAME": "[username]"} -
"ChallengeName": "SELECT_CHALLENGE", "ChallengeResponses": { "ANSWER": "EMAIL_OTP", "USERNAME": "[username]"}SMS_OTP
"ChallengeName": "SMS_OTP", "ChallengeResponses": {"SMS_OTP_CODE": "[code]", "USERNAME": "[username]"}
"ChallengeName": "EMAIL_OTP", "ChallengeResponses": {"EMAIL_OTP_CODE": "[code]", "USERNAME": "[username]"}
"ChallengeName": "SMS_MFA", "ChallengeResponses": {"SMS_MFA_CODE": "[code]", "USERNAME": "[username]"}
Этот ответ на проверку является частью потока SRP. Amazon Cognito требует, чтобы ваше приложение ответило на эту проверку в течение нескольких секунд. Если время ответа превышает этот период, ваш пул пользователей вернёт ошибку NotAuthorizedException.
"ChallengeName": "PASSWORD_VERIFIER", "ChallengeResponses": {"PASSWORD_CLAIM_SIGNATURE": "[claim_signature]", "PASSWORD_CLAIM_SECRET_BLOCK": "[secret_block]", "TIMESTAMP": [timestamp], "USERNAME": "[username]"}Добавьте "DEVICE_KEY" при входе с запомненного устройства.
"ChallengeName": "CUSTOM_CHALLENGE", "ChallengeResponses": {"USERNAME": "[username]", "ANSWER": "[challenge_answer]"}
Добавьте "DEVICE_KEY" при входе с запомненного устройства.
"ChallengeName": "NEW_PASSWORD_REQUIRED", "ChallengeResponses": {"NEW_PASSWORD": "[new_password]", "USERNAME": "[username]"}
Для установки любых необходимых атрибутов, возвращённых InitiateAuth в параметре requiredAttributes, добавьте "userAttributes.[attribute_name]": "[attribute_value]". Этот параметр также может устанавливать значения для атрибутов, которые не являются обязательными для вашего пула пользователей.
Примечание
При ответе на проверку NEW_PASSWORD_REQUIRED вы не можете изменить обязательный атрибут, который уже имеет значение. В AdminRespondToAuthChallenge или RespondToAuthChallenge установите значение для любых ключей, возвращённых Amazon Cognito в параметре requiredAttributes, а затем используйте операцию API AdminUpdateUserAttributes или UpdateUserAttributes для изменения значения дополнительных атрибутов.
SOFTWARE_TOKEN_MFA
"ChallengeName": "SOFTWARE_TOKEN_MFA", "ChallengeResponses": {"USERNAME": "[username]", "SOFTWARE_TOKEN_MFA_CODE": [authenticator_code]}
"ChallengeName": "DEVICE_SRP_AUTH", "ChallengeResponses": {"USERNAME": "[username]", "DEVICE_KEY": "[device_key]", "SRP_A": "[srp_a]"}
"ChallengeName": "DEVICE_PASSWORD_VERIFIER", "ChallengeResponses": {"DEVICE_KEY": "[device_key]", "PASSWORD_CLAIM_SIGNATURE": "[claim_signature]", "PASSWORD_CLAIM_SECRET_BLOCK": "[secret_block]", "TIMESTAMP": [timestamp], "USERNAME": "[username]"}
"ChallengeName": "MFA_SETUP", "ChallengeResponses": {"USERNAME": "[username]"}, "SESSION": "[Session ID from VerifySoftwareToken]"
"ChallengeName": "SELECT_MFA_TYPE", "ChallengeResponses": {"USERNAME": "[username]", "ANSWER": "[SMS_MFA or SOFTWARE_TOKEN_MFA]"}
Дополнительная информация о SECRET_HASH доступна в разделе Вычисление хэшей секретов. Информация о DEVICE_KEY — в разделе Работа с пользовательскими устройствами в вашем пуле пользователей.
ключ -> (строка)
значение -> (строка)
Сокращённый синтаксис:
KeyName1=string,KeyName2=string
Синтаксис JSON:
{"string": "string"
...}
--analytics-metadata (структура)
Информация, поддерживающая аналитические результаты с Amazon Pinpoint, включая идентификатор конечной точки пользователя. Идентификатор конечной точки — это место назначения push-уведомлений Amazon Pinpoint, например, идентификатор устройства, адрес электронной почты или номер телефона.
AnalyticsEndpointId -> (строка)
Сокращённый синтаксис:
AnalyticsEndpointId=string
Синтаксис JSON:
{
"AnalyticsEndpointId": "string"
}
--user-context-data (структура)
Контекстные данные о вашей сессии пользователя, такие как отпечаток устройства, IP-адрес или местоположение. Amazon Cognito система защиты от угроз оценивает риск события аутентификации на основе контекста, который ваше приложение генерирует и передаёт Amazon Cognito при выполнении запросов API.
Дополнительная информация доступна в разделе Сбор данных для защиты от угроз в приложениях.
IpAddress -> (строка)
EncodedData -> (строка)
Сокращённый синтаксис:
IpAddress=string,EncodedData=string
Синтаксис JSON:
{
"IpAddress": "string",
"EncodedData": "string"
}
--client-metadata (словарь)
Карта пользовательских пар «ключ-значение», которую можно указать в качестве входных данных для любых пользовательских рабочих процессов, которые запускает данное действие.
Пользовательские рабочие процессы создаются путем назначения функций Lambda для триггеров пула пользователей. При использовании действия API RespondToAuthChallenge Amazon Cognito вызывает все функции, которые назначены следующим триггерам: после аутентификации, перед генерацией токена, определение запроса на аутентификацию, создание запроса на аутентификацию и проверка запроса на аутентификацию. Когда Amazon Cognito вызывает любую из этих функций, он передает JSON-полезную нагрузку, которую функция получает в качестве входных данных. Эта полезная нагрузка содержит атрибут clientMetadata, который предоставляет данные, которые вы назначили параметру ClientMetadata в вашем запросе RespondToAuthChallenge. В коде вашей функции в Lambda вы можете обработать значение clientMetadata, чтобы улучшить свой рабочий процесс для ваших конкретных потребностей.
Дополнительную информацию см. в руководстве разработчика Amazon Cognito Использование триггеров Lambda.
Примечание
При использовании параметра ClientMetadata обратите внимание, что Amazon Cognito не выполнит следующие действия:
- Хранить значение
ClientMetadata. Эти данные доступны только для триггеров Lambda, которые назначены пулу пользователей для поддержки пользовательских рабочих процессов. Если в вашей конфигурации пула пользователей нет триггеров, параметрClientMetadataне имеет значения. - Проверять значение
ClientMetadata. - Шифровать значение
ClientMetadata. Не отправляйте конфиденциальную информацию в этом параметре.
ключ -> (строка)
значение -> (строка)
Сокращенная синтаксическая запись:
KeyName1=string,KeyName2=string
Синтаксис JSON:
{"string": "string"
...}
--cli-input-json | --cli-input-yaml (строка) Читает аргументы из предоставленной JSON-строки. JSON-строка следует формату, предоставленному в --generate-cli-skeleton. Если другие аргументы предоставлены в командной строке, эти значения переопределят значения, предоставленные в JSON. Невозможно передавать произвольные двоичные значения с помощью значения, предоставленного в JSON, так как строка будет воспринята буквально. Это может не быть указано вместе с --cli-input-yaml.
--generate-cli-skeleton (строка) Выводит JSON-скелет в стандартный вывод без отправки запроса API. Если не указано значение или указано значение input, выводит пример входного JSON, который можно использовать в качестве аргумента для --cli-input-json. Аналогично, если указано значение yaml-input, будет напечатан пример входного YAML, который можно использовать с --cli-input-yaml. Если указано значение output, проверяет входные данные команд и возвращает пример выходного JSON для этой команды. Сгенерированный JSON-скелет не является стабильным между версиями AWS CLI, и нет гарантий обратной совместимости в сгенерированном JSON-скелете.
Глобальные параметры
--debug (логическое значение)
Включает отладочную запись в журнал.
--endpoint-url (строка)
Переопределяет URL по умолчанию команды указанным URL.
--no-verify-ssl (логическое значение)
По умолчанию AWS CLI использует SSL при общении с AWS-сервисами. Для каждого соединения SSL AWS CLI будет проверять сертификаты SSL. Этот параметр переопределяет стандартное поведение проверки сертификатов SSL.
--no-paginate (логическое значение)
Отключает автоматическую постраничную навигацию. Если автоматическая постраничная навигация отключена, AWS CLI выполнит только один вызов для первой страницы результатов.
--output (строка)
Стиль форматирования для вывода команды.
- json
- text
- таблица
- yaml
- yaml-поток
--query (строка)
Запрос JMESPath для фильтрации данных ответа.
--profile (строка)
Использование определенного профиля из файла учетных данных.
--region (строка)
Область для использования. Переопределяет настройки конфигурации/среды.
--version (строка)
Отображение версии этого инструмента.
--color (строка)
Включение/выключение цветного вывода.
- включено
- выключено
- автоматически
--no-sign-request (логическое значение)
Не подписывать запросы. Учетные данные не будут загружены, если этот аргумент указан.
--ca-bundle (строка)
Файл сертификата CA для проверки сертификатов SSL. Переопределяет настройки конфигурации/среды.
--cli-read-timeout (целое число)
Максимальное время чтения сокета в секундах. Если значение равно 0, чтение сокета будет блокирующим и не будет иметь таймаута. Значение по умолчанию составляет 60 секунд.
--cli-connect-timeout (целое число)
Максимальное время подключения сокета в секундах. Если значение равно 0, подключение сокета будет блокирующим и не будет иметь таймаута. Значение по умолчанию составляет 60 секунд.
--cli-binary-format (строка)
Стиль форматирования для использования для двоичных блоков. Формат по умолчанию — base64. Формат base64 ожидает, что двоичные блоки будут предоставлены как закодированная в base64 строка. Формат raw-in-base64-out сохраняет совместимость с поведением AWS CLI версии 1, и двоичные значения должны быть переданы буквально. При предоставлении содержимого из файла, которое соответствует двоичному блоку, fileb:// всегда будет обрабатываться как двоичное и будет использовать содержимое файла непосредственно независимо от настройки cli-binary-format. При использовании file:// содержимое файла должно быть должным образом отформатировано для настроенного cli-binary-format.
- base64
- raw-in-base64-out
--no-cli-pager (логическое значение)
Отключение пейджера CLI для вывода.
--cli-auto-prompt (логическое значение)
Автоматически запрашивать входные параметры CLI.
--no-cli-auto-prompt (логическое значение)
Отключение автоматического запроса входных параметров CLI.
Примеры
Примечание
Для использования следующих примеров необходимо установить и настроить AWS CLI. Дополнительную информацию см. в руководстве по началу работы в Руководстве пользователя AWS CLI.
Если не указано иное, во всех примерах используются правила цитирования Unix. Эти примеры необходимо адаптировать к правилам цитирования вашей оболочки терминала. См. Руководство пользователя AWS CLI раздел Использование кавычек со строками.
Пример 1: Ответ на запрос NEW_PASSWORD_REQUIRED
Следующий пример respond-to-auth-challenge отвечает на запрос NEW_PASSWORD_REQUIRED, который вернул `initiate-auth`_. Он устанавливает пароль для пользователя jane@example.com.
aws cognito-idp respond-to-auth-challenge \
--client-id 1example23456789 \
--challenge-name NEW_PASSWORD_REQUIRED \
--challenge-responses USERNAME=jane@example.com,NEW_PASSWORD=[Password] \
--session AYABeEv5HklEXAMPLE
Вывод:
{
"ChallengeParameters": {},
"AuthenticationResult": {
"AccessToken": "ACCESS_TOKEN",
"ExpiresIn": 3600,
"TokenType": "Bearer",
"RefreshToken": "REFRESH_TOKEN",
"IdToken": "ID_TOKEN",
"NewDeviceMetadata": {
"DeviceKey": "us-west-2_a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
"DeviceGroupKey": "-wt2ha1Zd"
}
}
}
Дополнительную информацию см. в руководстве разработчика Amazon Cognito Аутентификация.
Пример 2: Ответ на запрос SELECT_MFA_TYPE
Следующий пример respond-to-auth-challenge выбирает TOTP MFA в качестве опции MFA для текущего пользователя. Пользователю было предложено выбрать тип MFA, и впоследствии ему будет предложено ввести код MFA.
aws cognito-idp respond-to-auth-challenge \
--client-id 1example23456789
--session AYABeEv5HklEXAMPLE
--challenge-name SELECT_MFA_TYPE
--challenge-responses USERNAME=testuser,ANSWER=SOFTWARE_TOKEN_MFA
Вывод:
{
"ChallengeName": "SOFTWARE_TOKEN_MFA",
"Session": "AYABeEv5HklEXAMPLE",
"ChallengeParameters": {
"FRIENDLY_DEVICE_NAME": "transparent"
}
}
Дополнительную информацию см. в руководстве разработчика Amazon Cognito Добавление MFA.
Пример 3: Ответ на запрос SOFTWARE_TOKEN_MFA
Следующий пример respond-to-auth-challenge предоставляет код TOTP MFA и завершает вход в систему.
aws cognito-idp respond-to-auth-challenge \
--client-id 1example23456789 \
--session AYABeEv5HklEXAMPLE \
--challenge-name SOFTWARE_TOKEN_MFA \
--challenge-responses USERNAME=testuser,SOFTWARE_TOKEN_MFA_CODE=123456
Вывод:
{
"AuthenticationResult": {
"AccessToken": "eyJra456defEXAMPLE",
"ExpiresIn": 3600,
"TokenType": "Bearer",
"RefreshToken": "eyJra123abcEXAMPLE",
"IdToken": "eyJra789ghiEXAMPLE",
"NewDeviceMetadata": {
"DeviceKey": "us-west-2_a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
"DeviceGroupKey": "-v7w9UcY6"
}
}
}
Дополнительную информацию см. в руководстве разработчика Amazon Cognito Добавление MFA.
Вывод
ChallengeName -> (строка)
Название следующего запроса, на который необходимо ответить.
Возможные запросы включают:
Примечание
Все следующие запросы требуютUSERNAME и, если у клиента приложения есть секретный ключ, SECRET_HASH в параметрах.-
WEB_AUTHN: Ответьте на запрос результатами успешной аутентификации с помощью аутентификатора WebAuthn или ключа passkey. Примерами аутентификаторов WebAuthn являются биометрические устройства и защищённые ключи. -
PASSWORD: Ответьте с параметрамиUSER_PASSWORD_AUTH:USERNAME(обязательно),PASSWORD(обязательно),SECRET_HASH(обязательно, если у клиента приложения настроен секретный ключ),DEVICE_KEY. -
PASSWORD_SRP: Ответьте с параметрамиUSER_SRP_AUTH:USERNAME(обязательно),SRP_A(обязательно),SECRET_HASH(обязательно, если у клиента приложения настроен секретный ключ),DEVICE_KEY. -
SELECT_CHALLENGE: Ответьте на запрос сUSERNAMEиANSWER, соответствующим одному из типов запросов в параметре ответаAvailableChallenges. -
SMS_MFA: Ответьте сSMS_MFA_CODE, отправленным вашим пулом пользователей по SMS. -
EMAIL_OTP: Ответьте сEMAIL_OTP_CODE, отправленным вашим пулом пользователей по электронной почте. -
PASSWORD_VERIFIER: Ответьте сPASSWORD_CLAIM_SIGNATURE,PASSWORD_CLAIM_SECRET_BLOCKиTIMESTAMPпосле вычислений на стороне клиента. -
CUSTOM_CHALLENGE: Возвращается, если ваш пользовательский поток аутентификации определяет, что пользователю нужно пройти другой запрос перед выдачей токенов. Параметры запроса определяются вашей функцией Lambda. -
DEVICE_SRP_AUTH: Ответьте с начальными параметрами аутентификации SRP устройства. Дополнительную информацию см. в разделе Вход с помощью устройства. -
DEVICE_PASSWORD_VERIFIER: Ответьте сPASSWORD_CLAIM_SIGNATURE,PASSWORD_CLAIM_SECRET_BLOCKиTIMESTAMPпосле вычислений на стороне клиента. Дополнительную информацию см. в разделе Вход с помощью устройства. -
NEW_PASSWORD_REQUIRED: Для пользователей, которым требуется сменить пароль после успешного первого входа. Ответьте на запрос сNEW_PASSWORDи необходимыми атрибутами, которые Amazon Cognito вернул в параметреrequiredAttributes. Вы также можете задавать значения для атрибутов, не требуемых вашим пулом пользователей и которые ваше клиентское приложение может записать. Amazon Cognito возвращает этот запрос только для пользователей с временными паролями. При создании пользователей без пароля необходимо предоставить значения для всех обязательных атрибутов.
Примечание
При ответе на запросNEW_PASSWORD_REQUIRED нельзя изменять обязательный атрибут, который уже имеет значение. В AdminRespondToAuthChallenge или RespondToAuthChallenge задайте значение для любых ключей, которые Amazon Cognito вернул в параметре requiredAttributes, затем используйте операцию API AdminUpdateUserAttributes или UpdateUserAttributes для изменения значения дополнительных атрибутов.-
MFA_SETUP: Для пользователей, которые должны настроить фактор MFA перед входом. Типы MFA, активированные для пула пользователей, будут перечислены в значении параметра запросаMFAS_CAN_SETUP. Для настройки временного одноразового пароля (TOTP) MFA используйте сеанс, возвращённый в этом запросе изInitiateAuthилиAdminInitiateAuth, как входной параметр дляAssociateSoftwareToken. Затем используйте сеанс, возвращённыйVerifySoftwareToken, как входной параметр дляRespondToAuthChallengeилиAdminRespondToAuthChallengeс именем запросаMFA_SETUPдля завершения входа. Для настройки MFA по SMS или электронной почте соберите атрибутphone_numberилиemailдля пользователя. Затем перезапустите поток аутентификации с запросомInitiateAuthилиAdminInitiateAuth.
Session -> (строка)
InitiateAuth или RespondToAuthChallenge приводит к тому, что ваше приложение должно пройти другой запрос, Amazon Cognito возвращает сеанс с другими параметрами запроса. Передайте этот идентификатор сеанса без изменений в следующий запрос RespondToAuthChallenge.ChallengeParameters -> (карта)
Параметры, определяющие ваш ответ на следующий запрос.
ключ -> (строка)
значение -> (строка)
AuthenticationResult -> (структура)
Результат успешного процесса аутентификации. После того, как ваше приложение прошло все запросы, Amazon Cognito возвращает AuthenticationResult с JSON-веб-токенами (JWT), которые указывают на успешный вход.
AccessToken -> (строка)
ExpiresIn -> (целое число)
TokenType -> (строка)
Bearer.RefreshToken -> (строка)
IdToken -> (строка)
NewDeviceMetadata -> (структура)
Новые метаданные устройства из результата аутентификации.
DeviceKey -> (строка)
DEVICE_PASSWORD_VERIFIER для аутентификации SRP устройства.DeviceGroupKey -> (строка)
DEVICE_PASSWORD_VERIFIER для аутентификации SRP устройства.
© Copyright 2025, Amazon Web Services. Created using Sphinx.