【问题标题】:How to create a JWT DRF consumer, with external provider?如何使用外部提供者创建 JWT DRF 消费者?
【发布时间】:2019-11-24 05:07:50
【问题描述】:

我必须设置应用程序的 API 部分。

总而言之,有一个私有 oauth 提供程序、一个前端 Angular 应用程序和一个 django rest 框架资源 API。 如果未登录,Angular 应用程序将无法访问,并重定向到 oauth 提供程序。用户必须在那里登录并被重定向到前端。 到目前为止一切顺利,提供者为前端提供了一个 JWT 访问令牌。

然后向提供JWT的DRF API请求资源。 这就是我卡住的地方,我在谷歌上找到的所有教程都解释了如何创建自己的提供程序。 但我只想获取令牌,向 oauth 提供者检查它是否有效,登录用户,提供资源,然后注销用户直到下一个请求。

如果有人可以给我一些有用的 tuto/doc/library?

谢谢。

【问题讨论】:

    标签: python django-rest-framework jwt single-sign-on


    【解决方案1】:

    因此,我最终创建了自己的自定义身份验证类,扩展了 BaseAuthentication(以及自定义用户、用户管理器等),因为我没有找到任何现有的库。

    如果有人对细节感兴趣,您可以查看 DRF 文档和互联网上的许多资源。

    附:不要忘记扩展authenticate_header 是你想用“raise AuthenticationFailed”返回401而不是403(出于某种原因)。

    【讨论】:

    • 您能分享您的自定义身份验证器代码吗?这将是最有帮助的。
    猜你喜欢
    • 1970-01-01
    • 2020-12-09
    • 1970-01-01
    • 2016-07-03
    • 2021-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多