6.6. ОТВЕТ ОБ ОШИБКЕ ТОКЕНА

6.6. ОТВЕТ ОБ ОШИБКЕ ТОКЕНА

Если запрос токена является недействительным или неавторизованным, сервер авторизации создает ответ об ошибке "400 Bad Request" в дополнение к кодам ошибок, определенным в подразделе 5.2 The OAuth 2.0 Authorization Framework ([RFC6749]), с применением следующих дополнительных кодов ошибок:

- "authorization_pending": запрос авторизации ожидает рассмотрения, поскольку конечный пользователь еще не прошел аутентификацию;

- "slow_down": (аналогично "authorization_pending") запрос авторизации находится на рассмотрении, и опрос должен продолжаться, но интервал должен быть увеличен как минимум на пять секунд для данного и всех последующих запросов;

- "expired_token": срок действия <auth_req_id> истек. Клиент должен сделать новый запрос аутентификации;

- "access_denied": пользователь отклонил запрос авторизации.

Примечание. Перечень стандартных кодов ошибок запроса авторизации определен в разделе 5.2 [RFC6749].

При определении кода ошибок необходимо учитывать следующие требования:

1. В случае если <auth_req_id> недействителен или был выдан другому клиенту, сервер авторизации возвращает код ошибки "invalid_grant".

2. В случае если клиент опрашивает быстрее, чем в рамках установленного интервала, сервер авторизации возвращает код ошибки "invalid_request".

3. В случае если клиент получает код ошибки "invalid_request", он не должен делать дальнейшие запросы для того же значения <auth_req_id>.

4. В случае если клиент зарегистрирован для использования режима Push, но вызывает конечную точку токена с типом гранта "urn: openid: params: grant-type: ciba", сервер авторизации возвращает код ошибки "unauthorized_client".

5. Когда клиент получает код ответа "4xx" с полезной нагрузкой JSON, он должен проверить полезную нагрузку, чтобы определить код ошибки.