gpt4 book ai didi

java - Spring 安全oauth2 : grant_type=password Authentication

转载 作者:行者123 更新时间:2023-11-30 07:46:13 27 4
gpt4 key购买 nike

我正在使用 Spring Oauth 2 来保护 Web 应用程序并实现三足安全系统,以及在使用时

grant_type=密码

我注意到用于获取用户 token 的 URL 是:

Method : POST + Basic-Authentication header for the client

http://host:port/api/oauth/token?grant_type=password&username=xxxxx&password=xxxx

我的问题:

这种方法是否足够安全,因为它在 URL 上共享用户的凭据,如果不是,有哪些替代方案或改进?

向主机添加 SSL 认证是否可以解决该问题?

谢谢

最佳答案

通过加密介质进行明文身份验证并不罕见 - 因此通过加密连接使用未加密的密码。

但是,我不会在 URL 中发送凭据。它看起来很糟糕,并且同一用户可能会为该 URL 添加书签。

您可以将凭据放入 HTTP header 中,只要您通过加密连接发送它们就可以了。

<小时/>

您的另一个选择是:

  1. 让服务器为自己创建公钥和私钥
  2. 通过身份验证/登录页面发送公钥
  3. JavaScript 使用公共(public) key 对用户名和密码进行加密
  4. 通过 HTTP 或 HTTPS 发送(我仍然会将其放在 header 而不是 URL 中)
  5. 服务器使用私钥来解密和验证凭据
<小时/>

tl;博士
最简单的解决方案是 HTTP header 中的 HTTPS 和纯文本凭据

关于java - Spring 安全oauth2 : grant_type=password Authentication,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33914255/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com