用于 Web API 的 Azure Active Directory 和在多个环境中使用 OAuth 的客户端

Azure Active Directory for Web API and clients using OAuth for multiple environments

我想知道使用 Azure Active Directory 处理多个环境的最佳方法是什么。执行此操作的唯一方法是为每个环境的 WebAPI 和客户端添加应用程序。因此,对于本地,我将有一个带有 https://localhost/webapi and a client https://localhost/sample that has permissions to https://localhost/webapi 之类的登录的 localhost-webapi。然后我需要对其余环境(开发、测试、生产)做同样的事情吗?

如果我正确理解你的问题,你有以下设置:

  • 在 AAD 中,您有一个租户,其中注册了一个 Web API。
  • 在同一个租户中,您注册了多个等效的客户端应用程序,这与您在一端设置的不同环境相关。

这似乎是测试多个环境的正确方法。请注意,您可以在 Web API 上注册不同的权限范围,以表示每个环境对您的 API.

的权限

因此您可以拥有 "user_impersonation_dev"、"user_impersonation_test"、"user_impersonation" 并让您的每个不同的应用程序请求对您的 API 的那些特定权限。这可能有助于在进行开发时进行更清晰的设置。