Jhipster 缺少身份验证不记名令牌

Jhipster missing authentication bearer token

我已经设置了一个微服务架构,其中包含一个 UAA、一个网关和一个服务(单个 Web 应用程序),如此处所述https://jhipster.github.io/using-uaa/

用户在此 webapp 中进行身份验证后,有几个 link 像这个

<a href="/zuulfitler/route?url=http://www.google.com" target="_blank"
>google</a>

当用户单击时,有一个 zuul "route" 过滤器检查请求是否具有适当的权限,然后路由到目的地 url。

问题是当请求被 zuul 拦截时,用户显示为未通过身份验证,因为带有承载令牌的授权 http header not 被注入,因为$http object.

未发出请求

参见:https://jhipster.github.io/using-uaa/#jhipster-uaa

This bearer token is injected as authorization header into each request performed by the AngularJS $http object.

如何在单击 link 时注入 http header?

提前致谢。

您只需让某些控制器可以访问令牌值,并构建链接,例如:

<a ng-href="/zuulfilter/route?url=http://google.com&access_token={{ctrl.accessToken}}" target="_blank">google</a>

同时通过 url 而不是 header 传递令牌,这也被 spring 云安全识别。