Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从外部Azure AD租户注册应用程序?_Azure_Oauth 2.0_Azure Active Directory - Fatal编程技术网

如何从外部Azure AD租户注册应用程序?

如何从外部Azure AD租户注册应用程序?,azure,oauth-2.0,azure-active-directory,Azure,Oauth 2.0,Azure Active Directory,我已经在本地Azure广告中创建了一个Web应用程序,我可以成功地使用它(使用oAuth2流)对我的广告租户的成员进行身份验证。现在,我需要扩展我支持的方案,以允许外部Azure AD租户的全局管理员注册他们的公司以使用此应用程序 基于Microsoft文档,此场景支持多租户 多租户:如果您构建的应用程序可供组织外的用户使用,则必须在公司目录中注册,但也必须在将使用该应用程序的每个组织的目录中注册。要使您的应用程序在其目录中可用,您可以为您的客户提供一个注册过程,使他们能够同意您的应用程序。当

我已经在本地Azure广告中创建了一个Web应用程序,我可以成功地使用它(使用oAuth2流)对我的广告租户的成员进行身份验证。现在,我需要扩展我支持的方案,以允许外部Azure AD租户的全局管理员注册他们的公司以使用此应用程序

基于Microsoft文档,此场景支持多租户

多租户:如果您构建的应用程序可供组织外的用户使用,则必须在公司目录中注册,但也必须在将使用该应用程序的每个组织的目录中注册。要使您的应用程序在其目录中可用,您可以为您的客户提供一个注册过程,使他们能够同意您的应用程序。当他们注册您的应用程序时,将显示一个对话框,显示应用程序所需的权限,然后显示同意选项。根据所需的权限,可能需要其他组织中的管理员给予同意。当用户或管理员同意时,应用程序将在其目录中注册。有关更多信息,请参阅将应用程序与Azure Active Directory集成


从我的阅读来看,似乎在某个时候,外部租户的全局管理员应该提供一个他们可以遵循的URL(login.microsoftonline.com/common/???),这将以某种方式导致外部应用程序像晨露一样沉淀到他们的Azure广告中。但是,如果这是正确的方法,我希望能提供一个标记化的示例,说明如何正确构建多租户外部Azure AD应用程序的登录URL,组管理员可以遵循该示例,以允许在AzureAD中进行访问。

好的,通过试用和失败,我找到了解决方案。远程租户的组管理员需要提供以下URL,以允许他们在其租户中将Azure AD应用程序注册为企业应用程序

https://login.microsoftonline.com/{remoteTenantUrl.com}/adminconsent?client_id={YourAppsClientID}&redirect_uri={YourAppsCallbackPage}

您也可以使用
https://login.microsoftonline.com/common/oauth2/authorize?prompt=admin_consent
并包括其余参数。但我想这一个比较老:)