2017-02-18 67 views
0

这是我的场景: 作为Azure的管理员,我想为我的同事添加应用程序。此应用程序将访问Microsoft Graph API以访问他们的日历或OneDrive文件。我为我的概念验证使用PHP应用程序。 用户必须能够做三件事:审查这个应用程序需要什么作为许可,给予同意,然后才能撤销同意。在azure上配置公司应用程序,具有consentscreen和用户撤销访问的权限

我已经使用微软的Graph Explorer网站测试了这个。它正确地要求同意(当以不同的用户登录时!)。当这个用户登录到portal.office.com可以撤销对图形浏览器的访问。

但是,我似乎无法让它为我自己构建的应用程序工作。在Azure中,我进入“应用程序注册”并设置密钥等。在权限中,我确保没有选择需要管理员同意的选项。我在类别“委派权限”选了几个

的PHP应用西港岛线不能在Azure上的IaaS/PaaS的运行,但托管在其他地方

什么惊讶,我的是两两件事: - 在我的PHP的。如果我没有要求,应用程序会跳过它。奇怪 - 在“我的帐户”中它仍然表示管理员授予访问权限

I已经看过下面的答案,但这也没有帮助。 How to revoke access to Microsoft APP for a user in php

因此,基本上我正在寻找与构建应用程序以访问Google通讯录。我已经构建了该集成并按预期工作,并在上面进行了概述。

任何想法的人?

回答

0

奥克,与微软授予这是我想出来的。

问题是某些权限/范围需要管理员同意。在这种情况下,一些事情发生了:

  1. 用户不会被迫放弃个人同意
  2. 用户通过portal.office.com门户网站不能撤销同意(我的账户 - >应用程序)
  3. 如果需要管理员同意的权限被删除,上述两种情况都不会改变!

所以,如果你设置了一个应用程序,并且你意外地选择了一个需要管理员同意的范围,那么你就麻烦了。

此外,还有一个全局设置,你应该能够使最终用户将看到一个屏幕同意在所有.....

PS C:\Users\xxxx> Connect-MsolService -credential $msolcred 
PS C:\Users\xxxx> Get-MsolCompanyInformation | fl DisplayName,UsersPermissionToUserConsentToAppEnabled 

DisplayName        : <your domain> 
UsersPermissionToUserConsentToAppEnabled : False 

看一看这个link

当选择权限/作用域时,新的Azure门户将提供更好的列表。在第二列中,有一个“管理员同意”的指示,在v1门户中缺少。因此,切换到新的门户网站,并避免使用那些需要管理员同意的权限。

相关问题