基于令牌的自动应用验证

时间:2016-07-17 09:45:58

标签: asp.net authentication asp.net-web-api hateoas

(使用Web API)自动应用在令牌过期时接收错误的正确/最合适的方式是什么,以获取新令牌?

我理解基于令牌的身份验证如何适用于坐在屏幕前的最终用户,即当他们的令牌过期时,他们的下一个请求会将他们重定向到登录页面以获取新令牌。

但是我想知道自动化应用程序的最佳实践是什么。 在这种情况下,屏幕前面没有任何东西,因此重定向到屏幕以手动输入密钥并不合适。

我应该在401响应中返回一个url,以便客户端应用程序接收,因此他们知道在哪里进行POST以获取新令牌,或者更适合返回401并记录用户应该在哪里去获取新令牌?

如果返回网址和401响应是合适的,那么实现此目的的正确响应格式是什么?

1 个答案:

答案 0 :(得分:2)

一般来说,我认为只返回401并让客户处理错误就可以了。此时,您的web api应用程序已经完成了它的工作,并且由客户决定下一步做出什么决定。据推测,客户端应用程序应该知道在哪里获得新令牌,首先创建一个令牌。

另一个选择是拥有一个“续订令牌”'在旧令牌到期之前生成新令牌的方法(如果你的令牌过期很快,否则不会打扰)。