我的问题类似于问题Multi-Tenant app - OneDrive Business API
但我想让我的应用程序从其他不同azure订阅的租户那里访问一个驱动器,这是可能的吗?我知道,如果我注册我的应用程序并将其标记为多租户,它将允许我访问我的azure订阅中的租户,但如果我想使用相同的应用程序访问租户,但在不同的azure订阅中该怎么办。
发布于 2016-06-20 03:00:09
您使用的是哪种身份验证流程?通常,我们使用授权代码授予流,用户将访问权限委托给web应用程序。在此方案中,若要使其他租户上的用户能够登录网站并访问其Office 365资源,我们只需在Azure门户上启用多租户应用。
但是,如果我想使用相同的应用程序访问租户,但是在不同的azure订阅中,该怎么办呢。
这取决于您使用的是哪个REST。如果我们使用Microsoft Graph来查询业务的OneDrive,这与调用单租户应用程序的REST API是相同的。无论用户登录到哪个租户,driveItem的子级列表的端点仍如下所示:
GET https://graph.microsoft.com/v1.0/me/drive/root/children
GET https://graph.microsoft.com/v1.0/me/drive/items/{item-id}/children
GET https://graph.microsoft.com/v1.0/me/drive/root:/{item-path}:/children
如果您使用的是Office 365 REST API,我们需要发现服务端点。有关Office365发现服务REST API的更多详细信息,请参阅here。
发布于 2016-06-20 11:31:31
根据您需要的权限,通常其他租户的租户管理员必须将应用程序添加到他们自己的Azure AD中。使用较新的应用程序模型v2,这要容易得多,因为管理员只需在整个租户的正常同意屏幕中给出一次同意即可。有关如何工作的更详细的解释,请参阅here。
https://stackoverflow.com/questions/37901124
复制相似问题