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

У нас есть служба отдыха, которую мы используем для аутентификации наших клиентов. В некоторых случаях мы хотим сообщить клиенту больше информации, чем просто "авторизация не пройдена". Например, если их учетная запись заблокирована после слишком большого количества попыток, мы сообщим клиенту, что его учетная запись была заблокирована. Существуют и другие случаи, связанные с бизнес-использованием, когда мы сообщаем им о других проблемах. Любая из этих проблем не позволит пользователю войти в систему, даже если имя пользователя / пароль верны.

Я думаю, что возвращение 401 Авторизованного, вероятно, некорректно для этих ситуаций, но после просмотра кодов состояния http я не уверен, какой код возврата будет уместным. Может быть 403 Запрещено? Поймите, мне придется вернуть формулировку вопроса клиенту.

1 ответ

Решение

Несмотря на то, что у клиента есть правильный логин и пароль, он не имеет необходимых разрешений, чтобы пойти дальше, поэтому я бы выбрал 403 Запрещено.

Разница между 401 Unauthorized и 403 Forbidden подробно описана здесь.

Другие вопросы по тегам