Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java REST服务基于令牌的身份验证:将生成的令牌存储在服务器端的何处?_Java_Spring_Rest_Spring Mvc_Spring Security - Fatal编程技术网

Java REST服务基于令牌的身份验证:将生成的令牌存储在服务器端的何处?

Java REST服务基于令牌的身份验证:将生成的令牌存储在服务器端的何处?,java,spring,rest,spring-mvc,spring-security,Java,Spring,Rest,Spring Mvc,Spring Security,我正在尝试为基于SpringMVC的REST服务实现令牌身份验证 我遵循这样的回答:作为指导,但现在我需要了解一些服务器端的细节 当用户第一次通过用户名+密码成功通过身份验证时,我返回一个存储一些信息的令牌。 当同一个用户在请求头中发送他的令牌时,我需要识别相关联的用户并定义is会话是否仍然处于活动状态 因此,方法基本上有两种: 用算法加密令牌哪个算法?我还可以使用在服务器端解密和提取用户信息 在应用程序数据库中存储令牌用户关联信息,并存储会话信息。 大多数人建议使用第一种解决方案,不在数据库中

我正在尝试为基于SpringMVC的REST服务实现令牌身份验证

我遵循这样的回答:作为指导,但现在我需要了解一些服务器端的细节

当用户第一次通过用户名+密码成功通过身份验证时,我返回一个存储一些信息的令牌。 当同一个用户在请求头中发送他的令牌时,我需要识别相关联的用户并定义is会话是否仍然处于活动状态

因此,方法基本上有两种:

用算法加密令牌哪个算法?我还可以使用在服务器端解密和提取用户信息 在应用程序数据库中存储令牌用户关联信息,并存储会话信息。 大多数人建议使用第一种解决方案,不在数据库中存储任何有关身份验证的信息,但在我看来,这种解决方案不太安全


有什么建议吗?

我不确定,但如果客户端向您发送令牌,并在头中使用唯一的会话id,则您不希望加密和解密,也可以将会话id存储到数据库中。最好为令牌的每个用户客户端使用唯一的会话\u id。我建议不要使用您自己的,而是使用现有的实现,如Spring会话,这取决于您不清楚的确切要求。@chrylis非常感谢!我不知道有一个关于这个的春季项目。我来看看。