2017-02-18 63 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門戶中缺少。因此,切換到新的門戶網站,並避免使用那些需要管理員同意的權限。

相關問題