我想通过以下方式使用“微服务架构” https://www.jhipster.tech/api-gateway/:
我不确定应该如何配置,或者甚至根本不可能...
答案 0 :(得分:0)
在设计整个系统时,您必须采取许多架构决策。但是,如果您要使用OpenID Conenct,则几乎没有什么共同点。
首先,您已经确定必须具有OpenID Connect提供程序(IDP)。您有几种选择。为此,您可以使用自己的IDP。否则,您的微服务可能由一个API网关控制(看看它确实有一个Hipster架构),该网关为此内置了IDP。无论如何,必须从应用程序终结点使用ID令牌来验证最终用户。
现在进入微服务消费,我看到可以使用两个选项。如果您的api网关为所有微服务建立了安全性,则网关必须基于访问令牌执行授权部分。但是,如果您直接使用微服务(无需与网关交互),则每个微服务都将单独处理授权。两者都有优点和缺点,但取决于您自己进行调查和决定。
总而言之,您的SPA使用ID令牌进行最终用户身份验证。一旦通过身份验证,您就可以使用访问令牌(最好是您所说的JWT)使用微服务。一旦微服务收到请求,它将基于访问令牌JWT授权该请求。为此,必须验证JWT索赔,其签名以及可以对发布令牌的IDP使用token introspection。