在azure上配置公司应用程序,并允许用户撤销访问权限
这是我的设想: 作为Azure上的管理员,我想为我的同事添加一个应用程序。此应用程序将访问Microsoft Graph API以访问其日历或OneDrive文件等。我正在使用PHP应用程序进行概念验证。 用户必须能够做三件事:查看此应用程序所需的权限、给予同意,然后才能撤销同意 我已经使用微软的图形浏览器网站对此进行了测试。它正确地请求同意(以其他用户身份登录时!)。当用户登录到portal.office.com时,可以撤消对图形浏览器的访问 然而,我似乎无法让它为我自己构建的应用程序工作。在Azure中,我转到“应用程序注册”并设置密钥等。在权限中,我确保未选择任何需要管理员同意的选项。我在“委派权限”类别中选择了一些 PHP应用程序不会在Azure IaaS/PaaS上运行,而是托管在其他地方 令我惊讶的是两件事: -在我的PHP应用程序中,我必须要求出现一个同意屏幕。如果我没有要求,应用程序将跳过它。奇怪。 -在“我的帐户”中,它仍然表示管理员已授予访问权限 我已经看了下面的答案,但这也没有帮助。 因此,基本上,我在寻找与构建应用程序以访问谷歌联系人(Google Contacts)时相同的场景。我构建了这种集成,并按照上述预期和概述工作在azure上配置公司应用程序,并允许用户撤销访问权限,azure,Azure,这是我的设想: 作为Azure上的管理员,我想为我的同事添加一个应用程序。此应用程序将访问Microsoft Graph API以访问其日历或OneDrive文件等。我正在使用PHP应用程序进行概念验证。 用户必须能够做三件事:查看此应用程序所需的权限、给予同意,然后才能撤销同意 我已经使用微软的图形浏览器网站对此进行了测试。它正确地请求同意(以其他用户身份登录时!)。当用户登录到portal.office.com时,可以撤消对图形浏览器的访问 然而,我似乎无法让它为我自己构建的应用程序工作。在
有人有什么想法吗?好的,在与微软商议后,我想到了这个 问题是某些权限/作用域需要管理员同意。在这种情况下,会发生以下情况:
PS C:\Users\xxxx> Connect-MsolService -credential $msolcred
PS C:\Users\xxxx> Get-MsolCompanyInformation | fl DisplayName,UsersPermissionToUserConsentToAppEnabled
DisplayName : <your domain>
UsersPermissionToUserConsentToAppEnabled : False
PS C:\Users\xxxx>Connect-MsolService-credential$msolcred
PS C:\Users\xxxx>获取MsolCompanyInformation | fl DisplayName,UsersPermissionUserApprovementAppeabled
显示名称:
UsersPermissionUserApprovementAppeabled:False
看看这个
在选择权限/范围时,新Azure门户提供了一个更好的列表。在第二列中,v1门户中缺少“管理员同意”的指示器。因此,切换到新门户,不要使用需要管理员同意的权限