将一个客户端应用程序用于多个web api';在不同的azure活动目录中

将一个客户端应用程序用于多个web api';在不同的azure活动目录中,azure,azure-active-directory,azure-web-app-service,easy-auth,Azure,Azure Active Directory,Azure Web App Service,Easy Auth,我在“AADirectory1”应用程序注册中注册了一个客户端web应用程序和一个web api应用程序 为了从客户端使用web api,我做了以下工作: WEB API应用程序注册中公开的API 为客户端应用程序添加了与my WEB API相关的API权限 为我的web客户端配置了应用程序服务(应用程序服务->身份验证/授权->Azure Active Directory,并将客户端ID和颁发者URL填写为) 现在我有了AADirectory2中的WEB API2。我不想在AADirector

我在“AADirectory1”应用程序注册中注册了一个客户端web应用程序和一个web api应用程序 为了从客户端使用web api,我做了以下工作:

  • WEB API应用程序注册中公开的API
  • 为客户端应用程序添加了与my WEB API相关的API权限
  • 为我的web客户端配置了应用程序服务(
    应用程序服务->身份验证/授权->Azure Active Directory
    ,并将客户端ID和颁发者URL填写为)

  • 现在我有了AADirectory2中的WEB API2。我不想在AADirectory2中为web客户端应用程序创建新的应用程序注册。相反,我想使用当前的web客户端应用程序(位于AADirectory1中)。问题是,我不知道如何设置我的web客户端,使其能够从web客户端active directory(AADirectory1)调用webapi1(AADirectory1)和web api2(AADirectory2)。

    首先需要将API 2制作成多租户应用程序

    然后,您将使用如下URL对API进行身份验证:

    https://login.microsoftonline.com/directory-1-id/oauth2/authorize?client_id=api-2-client-id&response_type=code&prompt=admin_consent&redirect_uri=api-2-redirect-uri
    
    我在手机上输入这个,希望我没有错过一些参数。 在您这样做并同意之后,API 2的服务主体将在目录1中创建。 然后,您可以像往常一样要求并同意客户端的权限

    现在,API需要验证令牌是由目录1或目录2发出的。 不要像通常在多租户API中那样关闭颁发者验证。 而是定义两个有效的发行人