代码之家  ›  专栏  ›  技术社区  ›  Mateus Luiz

JHipster-网关如何在微服务中进行身份验证?

  •  3
  • Mateus Luiz  · 技术社区  · 7 年前

    我正在使用JHipster进行一个微服务项目,使用Consor进行服务发现,使用JWT进行身份验证,但我的问题是:

    对于访问我的微服务的其他客户端,他们需要通过POST将带有凭据的JSON传递到网关进行身份验证,最后获得de id_令牌。但是网关如何在服务内进行身份验证?网关做了一些类似于我们在有外部客户端时所做的事情?还是与去服务发现有关?

    我在application-dev.yml中发现了这一点:

    security:
        authentication:
            jwt:
                secret: my-secret-token-to-change-in-production
    

    我的猜测是,微服务和网关共享一个公共密钥,但我没有找到这个密钥,只有yml上的这一部分。

    1 回复  |  直到 7 年前
        1
  •  1
  •   Gaël Marziou    7 年前

    您发现了它,网关在生成令牌时使用密钥对其进行签名,微服务使用相同的密钥验证签名。网关是一个Zuul代理,它将身份验证头传递给代理的微服务。

    所有这些应用程序都可以通过位于端口8500的本地领事代理使用领事中的此属性,请参阅 Spring Cloud Consul .