我需要从django调用REST服务,其中需要身份验证(用户名+密码)。我可以从request.user.password获取密码,但它不是干净文本格式,而是
pbkdf2_sha256$36000$rOpm97qpHsy4$NFKCCfMmve1Z6c1U/grizJ6TyQck3bE/Fe+Gy3Gi+c8=
(从安全角度看这是好的)
但据我所知,安全的REST服务需要使用干净文本密码来执行身份验证,因此我无法调用它。当用户登录时,我不会成为存储密码的忠实粉丝。
如何从Django调用安全的REST服务?
/////////////////////////////////////////////// ///////更新////////////////////////////////////////// ////////////
我有一个用户可以登录的Django Web应用程序(必须从这里调用REST)。
另外,我有一个完全独立的Spring Boot应用程序,它提供REST接口。目前它不安全,但我想在这里实现身份验证。
答案 0 :(得分:0)
请阅读Django restframework authentication以便更好地理解。实际上这就是在Oauth机制中发生的事情
客户端必须向用户服务器发出GET请求并要求代码。他们最初为您提供client_id
和redirect_url
您将显示他们以输入username
和password
,您将提供代码
之后,客户可以与client id
和client secret
一起向您的服务器发送另一种发布方法,并提供authentication token.
每当用户使用oauth令牌发出请求时,假设用户是经过身份验证的用户并提供资源。