为什么flask-security会重定向到未经授权的视图

时间:2015-11-06 05:20:36

标签: flask flask-login flask-security

我给了烧瓶安全性......它有很多好东西。虽然我不太懂,但我遇到了一些古怪的行为。从我看到的代码来看,代码看起来非常有意义,但是我无法理解它的基本原理。

如果使用@auth_token_required保护视图并且未满足条件,则返回401。有一个完美的感觉。

但是,如果使用@roles_required保护视图并且不符合条件,则服务器会将(302)重定向到未经授权的视图。

这对我来说没有意义,为什么他们两个都不会表现得一致。事实上,在这两种情况下,我都希望并期待401。

任何人都可以解释推理以及我为什么要这样做吗?或者有人可以解释自定义@roles_required行为的最佳方法吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

我认为这与不同程度的未经授权的回复有关。第一个是401错误,第二个是403错误。

这两者之间存在差异:

  

总之,缺失或>未经授权的响应应该用于   错误身份验证,应使用 403 禁止响应   之后,当用户通过身份验证但未获得授权时   对给定资源执行请求的操作。

来源:403 Forbidden vs 401 Unauthorized HTTP responses