gpt4 book ai didi

Azure API 管理和 OAuth2 - 对多个 API 使用单个 AD AppReg,还是对每个 API 使用单个 AD AppReg?

转载 作者:行者123 更新时间:2023-12-03 05:36:17 25 4
gpt4 key购买 nike

我目前正在设置 API 管理的单个实例。我有一个项目将包含 OAuth2 身份验证所需的 x4 API。(我有一个 AD 租户)。

我一直在遵循这个(相当令人困惑的)指南来使用 OAuth2 设置 API 管理...

https://learn.microsoft.com/en-us/azure/api-management/api-management-howto-protect-backend-with-aad

...它指定您为...创建 Azure Active Directory 应用程序注册

1) API(单个 API?)

2)访问API的客户端

我的问题是...我知道我可能只需要 1 个客户端应用程序注册,但我是否需要为每个 API 进行 4 个应用程序注册,或者我可以只使用单个应用程序,然后让所有 4 个 API 使用该单个应用程序吗?

我已经测试过这个,它似乎工作得很好,我只是想知道我是否在这里错过了一个技巧,并可能稍后将自己陷入困境。

我在这里寻求一些关于什么是正确的做法的最佳实践。拥有一个可以管理 x4(或更多)API 的应用程序注册可以减少管理工作,但这会导致以后出现问题吗?

提前致谢

最佳答案

虽然从技术上讲,您不需要为每个 webapi 或每个应用程序注册 1 个应用程序。但它被认为是安全性以及 API 和访问此类 API 的分离的最佳实践,也使得审核和监控变得更加容易。

但是,如果您只想 1 个应用程序注册来处理所有 4 个 API,那么从技术上来说没有什么可以阻止您。甚至是客户。

例如,您将很难控制每个 API 的访问,例如,如果您希望用户 A 能够访问 api A 而不能访问 API B,那么这就更加困难。此外,从安全角度来看,如果您只有 1 个应用程序注册,则所有其他 api 将能够访问彼此的端点。

可管理性也发挥了作用。例如,如果您想要应用程序注册中的某个应用程序的某些特定内容、范围/角色/等。将它们结合起来会使这样做变得更加困难。

底线是,在 90-95% 的情况下为每个 Web api 创建一个,这是最佳实践,并且可能会在以后为您省去麻烦。

希望能给您带来一些见解

关于Azure API 管理和 OAuth2 - 对多个 API 使用单个 AD AppReg,还是对每个 API 使用单个 AD AppReg?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62270992/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com