【问题标题】:Simply authentication with JWT in Spring Boot在 Spring Boot 中使用 JWT 进行简单的身份验证
【发布时间】:2018-07-04 23:50:24
【问题描述】:

我是安全方面的新手,所以这项任务几乎不需要帮助。我开发了小型应用程序,我只需要通过凭据对用户进行身份验证,并返回没有任何角色或范围的 jwt 令牌(用户将使用所有其余服务)。

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

我查看了很多教程,但它们对于我的目的来说太复杂了。

有我的问题,我将不胜感激任何帮助或一些指导,我应该做什么以及如何做:

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

谢谢。

【问题讨论】:

    标签: java spring spring-security jwt spring-security-oauth2


    【解决方案1】:

    回答这个问题已经很晚了,但如果有人仍在寻找答案,仍然会回答这个问题。假设您已经实现了对凭据的身份验证,但正在寻求 JWT 的帮助,请查看我的回答 JWT Token is always received as expired while parsing

    希望这会有所帮助。

    【讨论】:

      【解决方案2】:

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

      1. 您不需要实现自己的 OAuth2 服务器。您可以使用现有的符合 OAuth2 的应用程序,例如 KeycloakMitreid。我们发现 Keycloak 在未来更加丰富且易于使用。

      2. 如果您只是接收和验证 JWT 令牌,那么 Spring 将为您完成。但要创建 JWT 令牌,您需要使用 jjwtnimbus-jose-jwt 等第三方库。

      3. 再次,您可以选择创建自己的 Spring 应用程序,该应用程序将进行身份验证和创建 JWT 令牌,但要完全符合 OAuth2 还需要更多时间。我的建议是只使用现有的 OAuth2 应用程序,例如 Keycloak。 资源服务器是您需要创建的,并且是由 JWT 令牌保护和访问的实际应用程序。

      【讨论】:

        猜你喜欢
        • 2018-08-29
        • 2018-03-12
        • 2018-02-27
        • 2021-06-24
        • 2021-05-21
        • 2022-10-05
        • 2020-12-28
        • 2018-12-24
        • 2017-11-05
        相关资源
        最近更新 更多