0

我正在为多租户应用程序设计一个 REST API。我想保护 API。多租户应用程序可以由租户订阅,而租户又可以有多个用户使用该应用程序。

我计划同样使用 OAuth。其中一种可能性是使用 OAuth 的客户端凭据流 - 其中向订阅服务的每个租户提供客户端 ID 和密码。

这种方法的问题是,我无法区分租户的不同用户,因为每个人都使用相同的客户端 ID 和密码来获取访问令牌。

另一种选择是使用 OAuth 的授权令牌流。但在这种情况下,我不确定交互应该如何,因为它是 API(非 UI)。

此外,如何使用 SAML 解决这种用例?

4

1 回答 1

0

它不能。SAML 规范。没有办法将 SAML 令牌传递给 API。

如果您需要用户上下文,则需要使用授权授予流程。通过身份验证后,您需要为该 API(范围等)量身定制的 JWT,然后将该 JWT 发送到 API。

于 2021-07-23T23:21:18.670 回答