Spec-Zone.ru › AWS CLI v2

[ aws . cognito-idp ]

admin-respond-to-auth-challenge

Описание

Некоторые API-операции в пользовательском пуле генерируют запрос, например, запрос на код MFA, для аутентификации устройства, обходящего MFA, или для пользовательского запроса на аутентификацию. API-запрос AdminRespondToAuthChallenge предоставляет ответ на этот запрос, например, код или безопасный удаленный пароль (SRP). Параметры ответа на запрос аутентификации зависят от типа запроса.

Дополнительную информацию о пользовательских запросах на аутентификацию см. в разделе Триггеры Lambda для пользовательских запросов на аутентификацию.

Примечание

Данное действие может генерировать 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.

Примечание

Amazon Cognito оценивает политики Identity and Access Management (IAM) в запросах для этой API-операции. Для этой операции необходимо использовать учетные данные IAM для авторизации запросов и предоставить себе соответствующее разрешение IAM в политике.

Дополнительная информация
  • Подписание запросов к API Amazon Web Services
  • Использование API пользовательских пулов Amazon Cognito и конечных точек пользовательских пулов

См. также: Документация AWS API

Синтаксис

  admin-respond-to-auth-challenge
--user-pool-id <value>
--client-id <value>
--challenge-name <value>
[--challenge-responses <value>]
[--session <value>]
[--analytics-metadata <value>]
[--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]

Параметры

--user-pool-id (строка)

Идентификатор пула пользователей, в котором вы хотите ответить на вызов аутентификации.

--client-id (строка)

Идентификатор клиента приложения, в котором вы инициировали вход в систему.

--challenge-name (строка)

Название вызова, на который вы отвечаете.

Возможные вызовы включают следующие:

Примечание

Все следующие вызовы требуют 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_MFA
  • EMAIL_OTP
  • SOFTWARE_TOKEN_MFA
  • SELECT_MFA_TYPE
  • MFA_SETUP
  • PASSWORD_VERIFIER
  • CUSTOM_CHALLENGE
  • SELECT_CHALLENGE
  • DEVICE_SRP_AUTH
  • DEVICE_PASSWORD_VERIFIER
  • ADMIN_NO_SRP_AUTH
  • NEW_PASSWORD_REQUIRED
  • SMS_OTP
  • PASSWORD
  • WEB_AUTHN
  • PASSWORD_SRP

--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]"}

EMAIL_OTP

"ChallengeName": "EMAIL_OTP", "ChallengeResponses": {"EMAIL_OTP_CODE": "[code]", "USERNAME": "[username]"}

SMS_MFA

"ChallengeName": "SMS_MFA", "ChallengeResponses": {"SMS_MFA_CODE": "[code]", "USERNAME": "[username]"}

PASSWORD_VERIFIER

Этот ответ на вызов является частью потока 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" при входе в систему с запомненным устройством.

CUSTOM_CHALLENGE

"ChallengeName": "CUSTOM_CHALLENGE", "ChallengeResponses": {"USERNAME": "[username]", "ANSWER": "[challenge_answer]"}

Добавьте "DEVICE_KEY" при входе в систему с запомненным устройством.

NEW_PASSWORD_REQUIRED

"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]}

DEVICE_SRP_AUTH

"ChallengeName": "DEVICE_SRP_AUTH", "ChallengeResponses": {"USERNAME": "[username]", "DEVICE_KEY": "[device_key]", "SRP_A": "[srp_a]"}

DEVICE_PASSWORD_VERIFIER

"ChallengeName": "DEVICE_PASSWORD_VERIFIER", "ChallengeResponses": {"DEVICE_KEY": "[device_key]", "PASSWORD_CLAIM_SIGNATURE": "[claim_signature]", "PASSWORD_CLAIM_SECRET_BLOCK": "[secret_block]", "TIMESTAMP": [timestamp], "USERNAME": "[username]"}

MFA_SETUP

"ChallengeName": "MFA_SETUP", "ChallengeResponses": {"USERNAME": "[username]"}, "SESSION": "[Session ID from VerifySoftwareToken]"

SELECT_MFA_TYPE

"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"
  ...}

--session (строка)

Идентификатор сеанса, который сохраняет состояние запросов на аутентификацию и ответов на вызовы. Если запрос API AdminInitiateAuth или AdminRespondToAuthChallenge приводит к выводу, что ваше приложение должно пройти другой вызов, Amazon Cognito возвращает сеанс с другими параметрами вызова. Отправьте этот идентификатор сеанса без изменений в следующий запрос AdminRespondToAuthChallenge.

--analytics-metadata (структура)

Информация, которая поддерживает аналитические результаты с Amazon Pinpoint, включая идентификатор конечной точки пользователя. Идентификатор конечной точки — это пункт назначения для push-уведомлений Amazon Pinpoint, например, идентификатор устройства, адрес электронной почты или номер телефона.

AnalyticsEndpointId -> (строка)

Идентификатор конечной точки. Информация, которую вы хотите передать Amazon Pinpoint о том, куда отправлять уведомления.

Краткая синтаксическая запись:

AnalyticsEndpointId=string

Синтаксис JSON:

{
  "AnalyticsEndpointId": "string"
}

--context-data (структура)

Контекстуальные данные о сеансе пользователя, такие как отпечаток устройства, IP-адрес или местоположение. Amazon Cognito служба защиты от угроз оценивает риск события аутентификации на основе контекста, который ваше приложение генерирует и передает Amazon Cognito при выполнении запросов API.

Дополнительная информация приведена в разделе Сбор данных для защиты от угроз в приложениях.

IpAddress -> (строка)

IP-адрес источника устройства пользователя.

ServerName -> (строка)

Имя конечной точки службы вашего приложения.

ServerPath -> (строка)

Путь конечной точки службы вашего приложения.

HttpHeaders -> (список)

HTTP-заголовки из запроса на аутентификацию пользователя.

(структура)

HTTP-заголовок в параметре ContextData.

headerName -> (строка)

Имя заголовка.

headerValue -> (строка)

Значение заголовка.

EncodedData -> (строка)

Закодированные сведения об отпечатке устройства, собранные вашим приложением с помощью библиотеки сбора данных контекста Amazon Cognito. Дополнительная информация приведена в разделе Добавление данных устройства пользователя и сеанса в запросы API.

Краткая синтаксическая запись:

IpAddress=string,ServerName=string,ServerPath=string,HttpHeaders=[{headerName=string,headerValue=string},{headerName=string,headerValue=string}],EncodedData=string

Синтаксис JSON:

{
  "IpAddress": "string",
  "ServerName": "string",
  "ServerPath": "string",
  "HttpHeaders": [
    {
      "headerName": "string",
      "headerValue": "string"
    }
    ...
  ],
  "EncodedData": "string"
}

--client-metadata (массив)

Карта пользовательских пар ключ-значение, которую можно предоставить в качестве входных данных для любых пользовательских рабочих процессов, которые запускаются этим действием.

Пользовательские рабочие процессы создаются путем назначения функций Lambda для триггеров пользовательского пула. При использовании действия API AdminRespondToAuthChallenge Amazon Cognito вызывает все функции, которые вы назначили следующим триггерам:

  • До регистрации
  • Пользовательское сообщение
  • После аутентификации
  • Миграция пользователя
  • Перед генерацией токена
  • Определение проверки подлинности
  • Создание проверки подлинности
  • Проверка ответа на проверку подлинности

Когда Amazon Cognito вызывает любую из этих функций, он передает JSON-payload, который функция получает в качестве входных данных. Этот payload содержит атрибут clientMetadata, который предоставляет данные, которые вы назначили параметру ClientMetadata в вашем запросе AdminRespondToAuthChallenge. В вашем коде функции в Lambda вы можете обработать значение clientMetadata, чтобы улучшить свой рабочий процесс для ваших конкретных потребностей.

Для получения дополнительной информации см. Использование триггеров Lambda в руководстве разработчика Amazon Cognito.

Примечание

При использовании параметра 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
  • table
  • yaml
  • yaml-stream

--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 по использованию кавычек со строками.

Для ответа на проверку подлинности

Существует множество способов ответа на различные проверки подлинности, в зависимости от вашего потока аутентификации, конфигурации пользовательского пула и настроек пользователя. Следующий пример предоставляет код MFA TOTP для diego@example.com и завершает вход. В этом пользовательском пуле включена функция запоминания устройства, поэтому результат аутентификации также возвращает новый ключ устройства.

aws cognito-idp admin-respond-to-auth-challenge \
    --user-pool-id us-west-2_EXAMPLE \
    --client-id 1example23456789 \
    --challenge-name SOFTWARE_TOKEN_MFA \
    --challenge-responses USERNAME=diego@example.com,SOFTWARE_TOKEN_MFA_CODE=000000 \
    --session AYABeExample...

Вывод:

{
    "ChallengeParameters": {},
    "AuthenticationResult": {
        "AccessToken": "eyJra456defEXAMPLE",
        "ExpiresIn": 3600,
        "TokenType": "Bearer",
        "RefreshToken": "eyJra123abcEXAMPLE",
        "IdToken": "eyJra789ghiEXAMPLE",
        "NewDeviceMetadata": {
            "DeviceKey": "us-west-2_a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
            "DeviceGroupKey": "-ExAmPlE1"
        }
    }
}

Для получения дополнительной информации см. поток аутентификации администратора в руководстве разработчика Amazon Cognito.

Вывод

ChallengeName -> (строка)

Название следующего запроса, на который необходимо ответить.

Возможные запросы включают следующие:

Примечание

Все следующие запросы требуют 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 после расчётов на стороне клиента.
  • 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. Для настройки MFA с одноразовым паролем (TOTP) используйте сессию, возвращённую в этом запросе из InitiateAuth или AdminInitiateAuth, как входной параметр для AssociateSoftwareToken. Затем используйте сессию, возвращённую VerifySoftwareToken, как входной параметр для RespondToAuthChallenge или AdminRespondToAuthChallenge с именем запроса MFA_SETUP для завершения входа. Для настройки MFA по SMS или электронной почте соберите атрибуты phone_number или email для пользователя. Затем перезапустите поток аутентификации с запросом InitiateAuth или AdminInitiateAuth.

Session -> (строка)

Идентификатор сессии, который сохраняет состояние запросов на аутентификацию и ответов на запросы.

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.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API