spring安全登录后如何生成认证令牌

spring安全登录后如何生成认证令牌,spring,authentication,spring-security,token,Spring,Authentication,Spring Security,Token,我想在使用spring安全认证成功登录后生成一个认证令牌- a) 生成并存储AES密钥 b) 使用此AES密钥加密用户名+时间戳(此步骤后必须进行base64编码以避免任何特殊字符)。这将是您的用户令牌 c) 使用HMAC密钥对此令牌进行签名(再次将其存储在密钥库中) d) 将令牌与签名一起发送(使用;作为分隔符) e) 将在步骤c中获得的令牌与数据库中的用户名相对应 我不知道如何实现上述功能。按照上述方式生成令牌后,我希望将其发送到rest请求响应服务的响应头中。此外,我还必须随响应头发送一些

我想在使用spring安全认证成功登录后生成一个认证令牌-

a) 生成并存储AES密钥

b) 使用此AES密钥加密用户名+时间戳(此步骤后必须进行base64编码以避免任何特殊字符)。这将是您的用户令牌

c) 使用HMAC密钥对此令牌进行签名(再次将其存储在密钥库中)

d) 将令牌与签名一起发送(使用;作为分隔符)

e) 将在步骤c中获得的令牌与数据库中的用户名相对应


我不知道如何实现上述功能。按照上述方式生成令牌后,我希望将其发送到rest请求响应服务的响应头中。此外,我还必须随响应头发送一些json数据。我有一个服务器控制器,请求来自该控制器,因此我希望在控制器中获取生成的令牌。请帮助我这样做。

您是否考虑过OAuth@JIMI是的。但是我不知道如何实现它。而且它的概念在文档中并不清楚,而且源代码对于我作为初学者来说太复杂了。我知道可能不太容易理解spring oauth,但我仍然建议您查看教程:和示例+源代码。它应该能让你了解事情是如何运作的。了解事物的工作原理并自己实现它们是最好的学习方法,但作为初学者,您现在很难做到这一点。@JIMI everyone谈到web应用程序。我们的场景是针对android应用程序,客户端使用rest与服务器通信,rest以json和所有其他方式发送和检索数据由服务器端的控制器控制。每个人都在讲述身份验证后颁发令牌,但没有人说该令牌如何可用于我们的控制器。在阅读了大量关于spring安全、誓言、令牌管理……的教程后,我完全迷失了方向。出于好奇,你最终得到了什么?您是否使用了oAuth规范(不确定这是否适合您…)我已经实现了类似的功能(编码和加密)