从django调用安全(需要身份验证)REST

时间:2017-06-22 09:58:47

标签: python django rest authentication django-rest-framework

我需要从django调用REST服务,其中需要身份验证(用户名+密码)。我可以从request.user.password获取密码,但它不是干净文本格式,而是

pbkdf2_sha256$36000$rOpm97qpHsy4$NFKCCfMmve1Z6c1U/grizJ6TyQck3bE/Fe+Gy3Gi+c8=

(从安全角度看这是好的)
但据我所知,安全的REST服务需要使用干净文本密码来执行身份验证,因此我无法调用它。当用户登录时,我不会成为存储密码的忠实粉丝。

如何从Django调用安全的REST服务?

/////////////////////////////////////////////// ///////更新////////////////////////////////////////// ////////////

我有一个用户可以登录的Django Web应用程序(必须从这里调用REST)。
另外,我有一个完全独立的Spring Boot应用程序,它提供REST接口。目前它不安全,但我想在这里实现身份验证。

1 个答案:

答案 0 :(得分:0)

请阅读Django restframework authentication以便更好地理解。实际上这就是在Oauth机制中发生的事情

客户端必须向用户服务器发出GET请求并要求代码。他们最初为您提供client_idredirect_url

您将显示他们以输入usernamepassword,您将提供代码

之后,客户可以与client idclient secret一起向您的服务器发送另一种发布方法,并提供authentication token.

每当用户使用oauth令牌发出请求时,假设用户是经过身份验证的用户并提供资源。