微服务解决方案中的Azure Active Directory代表流量

时间:2019-01-29 15:43:45

标签: oauth authorization azure-active-directory microservices

我有一个微服务解决方案,在微服务前面有一个API网关。我希望授权发生在微服务级别。我有一个SPA客户端,使用隐式流来获取令牌并调用API。在API上,我使用代表流获取令牌以作为用户调用相关的微服务。因此,对于微服务而言,它似乎是用户,并且可以执行授权。

我的问题是,如果我不使用按代流程,则需要向API网关授予应用级的访问微服务的权限。如果我提供API应用程序级别的服务到服务(客户端证书授予流)功能,那么我将不得不依靠网关API来执行授权,这似乎是一个糟糕的主意。如果在类似的情况下另一个API需要调用我的API,这也是一个非常糟糕的主意。

我的问题是:还有什么其他方法可以使用户身份流到微服务,从而可以进行适当的授权?

我已经看到了Identity Server中使用另一个标头的示例,但是由于在Identity Server中缺少一些按需选择选项,如果这样做的话我就不知道了。顺便说一句,我意识到我可以将用户身份作为字符串传递,但是我将失去所有已签名的令牌好处,从而提供了一定程度的确定性:令牌未被篡改。

0 个答案:

没有答案