【发布时间】:2020-06-16 14:40:38
【问题描述】:
我想在不同的微服务之间进行通信,但出现的问题是微服务使用 jwt 令牌进行保护,我无法找到从第一个微服务向其他微服务发送安全调用的方法。有没有一种方法可以直接与服务方法通信,因为如果我打开我的 api,它将被滥用。
或者我必须通过api网关通过api网关方式发送每个请求并从那里进行安全通信。
【问题讨论】:
-
为什么不直接将令牌槽传递给您的其他 MS?然后,每个 MS 可以针对同一个令牌再次验证,您只需在初始 API 调用时提交它。
-
我的问题是为什么首先需要跨服务通信?如果只是将数据返回给调用者,那么网关 API 将是可行的方法。在我个人看来,微服务不应该需要直接相互交谈,尽管它们可能会关心彼此触发的事件。
-
我的要求是从角色 ms 到用户 ms 获取特定角色,但每当我使用 feign 或 rest 模板进行内部调用时,其他 ms 会抛出 401。所以我的要求是实现我的微服务,例如ms之间的所有通信都可以完成,外部通信可以使用api网关完成。
标签: java spring jwt microservices communication