【问题标题】:Spring send user passwords in http request body. Storing passwords in javaSpring 在 http 请求正文中发送用户密码。在java中存储密码
【发布时间】:2020-07-27 12:24:52
【问题描述】:

我使用 firebase 创建了一个 node rest API 来登录用户。正文是带有用户名和密码的 JSON。如何在我的 Spring 应用程序上登录用户并保护用户密码,而不是将其直接放在发布请求中?这就是我的 API 登录用户的方式,我向它发送 JSON:

{
   email: test@test.com,
   password: 123456
}

在春季,我可以将该 JSON 发送到 API,但我觉得将密码保存在模型中并发送它不是正确的方法。我该怎么做呢?

我看过 Spring Security,我很困惑。它对密码进行编码,但我的 API 不知道编码的密码?如果有人可以帮助我,我将不胜感激。

【问题讨论】:

    标签: java node.js spring authentication passwords


    【解决方案1】:

    您不会为此使用 POST。您将使用授权标头和 HTTPS 进行加密。关于您的 API 不知道加密密码,这是理想的。您可以让您的 spring 应用程序生成一个可以链接到该帐户的令牌。然后,您可以在 API 上使用该令牌来执行请求验证。您可以通过从 API 向 spring 服务器发送请求来检查令牌是否有效来进行验证。

    【讨论】:

    • 但是当我在登录表单中获取用户密码时,我将密码保存在用户模型中,所以我认为这是明文?
    • 授权头使用Base64。还值得一提的是,密码的输入类型也具有特定的密码类型,因此肉眼看不到。
    • 查看以下链接; baeldung.com/spring-security-login
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-11-16
    • 2021-07-12
    • 1970-01-01
    • 2020-04-30
    • 2016-08-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多