gpt4 book ai didi

java - 实现基于 REST 的身份验证

转载 作者:行者123 更新时间:2023-12-01 13:10:07 26 4
gpt4 key购买 nike

我正在开发一个 REST 系统,并且即将开始开发一种用户进行身份验证以使用该服务的方法。在研究了哈希方法之后,我阅读了WikiPedia - Basic Authentication

但是我对实现有一些疑问。如果我理解正确的话,用户名和密码将被编码为 Base 64 并发送到服务器。这就是我的困惑所在。

一旦服务器收到这样的请求,我假设我必须决定 base64 并根据哈希值进行检查。但是,一旦完成此操作,我不明白必须做什么来验证用户以获取 future 的请求。

我必须检查每次通信时发送的这个 base64 吗?我不想在服务器上保存 Base64 以避免每次都检查密码,因为这会破坏仅使用哈希密码的目的。此外,我的服务仅是 SSL,因此在其余请求中将用户名和密码作为参数传递作为身份验证手段(而不是在 http header 中传递)有什么缺点吗?

最佳答案

基本身份验证只是通过 HTTP 将用户名和密码从客户端发送到服务器的标准方法。它没有定义是否使用底层 SSL,或者这是否是多个调用中的第一个。

我想说的是:你可以决定。

但是,REST 是无状态的,因此您应该在每次连接到服务器时发送它,而不是创建某种 session 。

基本身份验证相对于 REST 参数的优势在于,前者几乎是每个 Web 框架的一部分(例如 Java EE、Spring Security)。而后者会将额外的参数添加到您的所有请求中,并需要您每次自己检查。

关于java - 实现基于 REST 的身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22946678/

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