2016-07-17 8 views
0

(Использование веб-API) Каков правильный/наиболее подходящий способ для автоматических приложений получать сообщение об ошибке, когда их токен истекает, чтобы получить новый токен?Аутентификация на основе токенов для автоматизированных приложений

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

Однако мне было интересно, что лучше всего подходит для автоматизированных приложений. В этом случае перед экраном ничего не сидит, поэтому перенаправление на экран ручного ключа в деталях не подходит.

Должен ли я вернуть URL-адрес в ответе 401 для клиентского приложения, чтобы узнать, где сделать POST, чтобы получить новый токен, или более целесообразно просто вернуть 401 и документ, где пользователь должен пойти, чтобы получить новый токен?

Если верный URL-адрес вместе с ответом 401 подходит, какой правильный формат ответа для этого?

ответ

2

Как правило, я думаю, что просто вернуть 401 и позволить клиенту справиться с ошибкой. На данный момент ваше приложение для веб-приложений выполнило свою работу, и клиент должен решить, какое решение сделать дальше. Предположительно, клиентское приложение должно знать, где взять новый токен, создав его в первую очередь.

Другой вариант заключается в том, чтобы использовать метод «Обновить токен» для генерации нового токена до истечения срока действия старого (если токены истекают довольно быстро, не беспокоиться иначе).