Django:使用Oauth2和SSL时得到403

时间:2015-11-19 16:38:31

标签: django ssl oauth-2.0 http-status-code-403

我正在使用带有Oauth2(django-oauth-toolkit)的Django 1.6,并且该站点通过apache是​​SSL安全的。

  • 当我获得一个令牌并使用它没有 SSL时 - 我到达api并获得200.
  • 如果令牌无效,我会按预期获得403。行。
  • 当我使用SSL 而没有 Oauth2时 - 它也通过了OK。

但是当我一起使用SSL和Oauth时,我得到了403。

有人能告诉我一些我错过的信息吗?

谢谢你的进步

Hagay。

1 个答案:

答案 0 :(得分:2)

如果您在Apache / WSGI / Django下遇到HTTP授权的奇怪问题,但在运行manage.py runserver时却没有,那么您可能需要在Apache站点配置中使用此命令:

WSGIPassAuthorization on 

如果没有打开设置,那么WSGI会“吞下”所有授权标头,并且不会将它们传递给您的Python代码,显然是出于安全考虑。

有关详细信息,请参阅the WSGI module docs