Unified Identity Management logo figure Unified Identity Management logo figure
Поиск Поиск по документации

Возможные коды ошибок WebSSO

Общий формат ответа

В ходе выполнения различных сценариев WebSSO может оказаться в не состоянии корректно их завершить. В таких случаях в WebSSO предусмотрен стандартный механизм ответа о возникших ошибках.

Общая схема ответа, содержащего ошибки, выглядит следующим образом.

Формат ответа

HTTP/1.1 200 OK
{
  "execution": <execution>,
  "view": {
    <view_field1_name>:<view_field1_value>,
    ....
  },
  "form": {
    "name": <name>,
    "fields": {
      <form_field1_name>: {
        "constraints": [
          {
            "name": <constraint1_field1>,
            "attributes": {
              <attribute1_constraint1_field1_name>: <attribute1_constraint1_field1_value>,
              ...
            }
          },
          ...
        ]
      },
      ...
    },
    "errors": [
      {
        "message": <error_code>
      },
      ...
    ]
  },
  "serverUrl": <url>,
  "step": <step>
}

Параметры

  • <view_field1_name> - имя поля, содержащее информацию для построения html страницы

  • <view_field1_value> - значение поля, которое используется для построения html страницы

  • <execution> - идентификатор предсессии аутентификации

  • <name> - название формы

  • <url> - URL, на котором находится сценарий

  • <step> - названия этапа сценария, на котором произошла ошибка

  • <constraint_field1> - название ограничения валидации, наложенного на поле формы с названием <form_field1_name>

  • attribute1_constraint1_field1_name - название атрибута, соответствующего ограничению <constraint_field1>

  • <error_code> - код произошедшей ошибки из таблицы

Таблица возможных кодов ошибок и их значений

Код ошибки Описание причины возникновения

invalid_credentials

Пользователь ввел неправильные данные учетной записи и не был аутентифицирован.

expired_password

Время действия пароля, введенного пользователем, истекло. Пользователь не был аутентифицирован.

user_blocked

Учетная запись пользователя заблокирована.

ip_blocked

IP адресс, с которого пользователь обращается в WebSSO, заблокирован.

invalid_captcha

Введенная пользователем CAPTCHA неверная.

need_captcha

Для продолжения сценария пользователь должен ввести CAPTCHA.

error

Пользователь не был аутентифицирован в результате неожиданного ответа от внешней системы.

login-by-otp-disabled

Пользователь попытался аутентифицироваться через сценарий с аутентификацией по OTP, но это невозможно, поскольку данный функционал отключен конфигурационным ключем.

error_sending_otp

Невозможно отправить OTP пользователю.

too_many_sms

Невозможно отправить OTP пользователю, поскольку превышено число допустимых повторных запросов отправки OTP. Примечание: OTP может быть отправлен пользователю произвольным способом, а не только через sms сообщение.

too_many_wrong_code

Превышено число допустимых попыток ввода OTP.

invalid_otp

Введенный OTP неверный.

validate-otp-fail

Введенный OTP неверный.

otp_expired

Время действия введенного OTP истекло.

otp-expired

Время действия введенного OTP истекло.

otp-error

Сценарий ввода OTP завершился неуспешно.

external-api-error

Выполнение сценария невозможно, поскольку получен неожиданный ответ от внешней системы или внешняя система не доступна.

external-system-bad-response

Выполнение сценария невозможно, поскольку получен неожиданный ответ от внешней системы или внешняя система не доступна.

msisdn-is-not-b2b

Введенный msisdn не принадлежит реалму b2b.

too_many_attempts

Превышено число допустимых попыток изменения пароля.

user-is-not-allowed

Данному пользователю запрещено продолжать данный сценарий.

error_password_change

Сценарий изменения пароля не был успешно завершен. Пароль не был изменен.

no_email_found

Пользователь не найден или у пользователя не существует email.

msisdn-not-exists

Пользователя с заданным msisdn не существует.

principal-not-exists

Пользователь не существует.

no-principal-found

Пользователь не существует.

user-not-found

Пользователь не существует.

login-exists

Невозможно зарегестрировать пользователя с заданным login, поскольку пользователь с заданным login уже существует.

login_already_exists

Невозможно изменить login пользователя на заданный, поскольку пользователь с заданным login уже существует.

email-exists

Пользователь с заданным email уже существует.

user-exists

Невозможно зарегестрировать пользователя с заданными msisdn или email или login, поскольку пользователь с такими параметрами уже существует.

email_verification_failed

Невозможно подтвердить email.

reset_required

Пароль или не был задан либо был сброшен в результате каких-то действий, необходимо создать новый пароль. Отличается от expired_password, поскольку в том случае пароль существует и был провалидирован, но требуется смена. В данном случае пароль не провалидирован, поскольку не задан.