Java 在Spring Boot中使用JWT进行简单身份验证

Java 在Spring Boot中使用JWT进行简单身份验证,java,spring,spring-security,jwt,spring-security-oauth2,Java,Spring,Spring Security,Jwt,Spring Security Oauth2,我在安全方面是新手,所以这项任务不需要什么帮助。我开发了一个小应用程序,只需要通过凭据对用户进行身份验证,并返回jwt令牌,而不包含任何角色或作用域(用户将使用所有rest服务) 我只需要区分身份验证用户和匿名用户,并验证令牌 我查阅了很多教程,但它们对于我来说太复杂了 以下是我的问题,我将非常感谢任何帮助或指导我应该做什么以及如何做: 我发现其中一个教程使用OAuth2。真的很需要 为了我的目的实现OAuth2 我应该使用哪个依赖项jjwt或spring security jwt? 确实需要授

我在安全方面是新手,所以这项任务不需要什么帮助。我开发了一个小应用程序,只需要通过凭据对用户进行身份验证,并返回jwt令牌,而不包含任何角色或作用域(用户将使用所有rest服务)

我只需要区分身份验证用户和匿名用户,并验证令牌

我查阅了很多教程,但它们对于我来说太复杂了

以下是我的问题,我将非常感谢任何帮助或指导我应该做什么以及如何做:

  • 我发现其中一个教程使用OAuth2。真的很需要 为了我的目的实现OAuth2
  • 我应该使用哪个依赖项jjwtspring security jwt?
  • 确实需要授权服务器和资源服务器,或者存在 更简单的方法

  • 谢谢。

    以下是对您的问题的简短回答,希望能帮助您进一步研究:

  • 您不需要实现自己的OAuth2服务器。您可以使用现有的OAuth2兼容应用程序,如或。我们发现keydrope在未来更加丰富且易于使用

  • 如果您只是在接收和验证JWT令牌,那么Spring将为您做这件事。但为了创建JWT令牌,您需要使用第三方库,如jjwtnimbus jose JWT

  • 同样,您可以选择创建您自己的Spring应用程序,该应用程序将进行身份验证并创建JWT令牌,但要完全兼容OAuth2还需要更多。我的建议是只使用现有的OAuth2应用程序,比如KeyClope。 资源服务器是您需要创建的服务器,是由JWT令牌保护和访问的实际应用程序


  • 现在回答这个问题已经很晚了,但是如果有人还在寻找答案的话,还是要回答这个问题。假设您已经实现了对凭据的身份验证,但正在寻求JWT的帮助,请查看我的答案

    希望这有帮助