Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/329.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 JHipster-网关如何在微服务中进行身份验证?_Java_Jwt_Jhipster_Microservices_Consul - Fatal编程技术网

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

Java JHipster-网关如何在微服务中进行身份验证?,java,jwt,jhipster,microservices,consul,Java,Jwt,Jhipster,Microservices,Consul,我正在使用JHipster进行一个微服务项目,我使用Concur进行服务发现,使用JWT进行身份验证,但我的问题是: 对于访问我的微服务的其他客户机,他们需要通过POST将带有凭据的JSON传递到网关进行身份验证,最后获得de id_令牌。但是网关如何在服务中进行身份验证?网关做了一些类似于我们在有外部客户端时所做的事情?还是说这与去服务发现有关 我在application-dev.yml中发现: security: authentication: jwt:

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

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

我在application-dev.yml中发现:

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

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

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


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

那么领事为网关提供令牌以访问微服务?我也会在文档中搜索,如果我找到了,我会写在这里。不,领事提供了令牌签名的密钥,而不是令牌本身。Consor提供服务注册和集中配置。令牌是在身份验证期间由网关生成的。哦!!谢谢!!:)