2017-01-01 42 views
0

工具:郵遞員Microsoft Graph - 爲什麼權限/範圍「Group.ReadWrite.All」能夠對用戶配置文件屬性執行PATCH?

  1. 創建蔚藍廣告的應用程序,授予唯一的應用程序,允許Group.ReadWrite.All微軟圖形應用程序,該應用程序有標準委託權限「登錄和讀取用戶配置文件」,「Windows Azure中的Active Directory」應用程序。
  2. 使用客戶端證書授予流程,在端點https://login.windows.net/處使用資源參數「https://graph.windows.net」爲AzureAD圖形api申請的令牌;
  3. 令牌回來
  4. 使用的令牌和一個用戶OK
  5. 難道上的用戶PATCH(變型的,HTTP代碼204回成功去)做了一個GET;

這看起來很奇怪,我爲什麼一個應用程序能夠做到在蔚藍的廣告用戶,當應用程序上的Microsoft Graph API僅授予Group.ReadWrite.Allpatch

+0

您能否快速查看一下您的訪問令牌請回來嗎?使用像jwt,calebb.net這樣的JWT解碼器,並更新您的帖子以包含「角色」聲明值。這可能是另一個原因...使用AAD powershell,你可以看看Directory Writers角色的成員嗎?是否有可能將服務主體(代表您的應用程序)添加到此角色? –

+0

剛剛在Jwt解碼器中籤出了toke,沒有appRole calim可用。我會檢查目錄編寫器角色,並會更新此評論。 –

+0

@ DanKershaw-MSFT ---這很奇怪,我只是從powershell(Get-MsolRoleMember -RoleObjectId)中查看目錄角色,我可以看到該應用程序是Directory Writer角色的成員,但這可能是正確的,因爲Group.ReadWrite 。所有這些角色都會被分配,我是否在正確的路徑上? –

回答

0

我們正在研究新的Azure門戶的經驗,以「同意/批准」您的租戶中的應用程序。在此之前,您需要按照本示例應用程序的說明中的最後一步操作(以同意應用程序):https://github.com/Azure-Samples/active-directory-dotnet-graphapi-console。 這樣做後,您應該在訪問令牌(包含Group.ReadWrite.All)中看到「角色」聲明。

您正在報告的其他問題(它看起來像您的應用程序已被添加到Directory Writers角色,使您的應用程序能夠執行的不僅僅是組操作) - 這需要更多的調查,因爲這應該不會發生。將回報。

希望這會有所幫助,

+0

這裏有兩個問題。
問題#1)添加所有者的文檔不正確https://graph.microsoft.io/en-us/docs/api-reference/v1.0/api/group_post_owners(執行此API需要以下其中一個範圍: Group.ReadWrite.All或Directory.ReadWrite.All或Directory.AccessAsUser.All),它需要Directory.ReadWrite.All和Group.ReadWrite.All,問題#2)Azure AD門戶不會從Directory Writer中刪除應用程序服務主體如果您從Windoes AzureAD App中刪除「讀取和寫入目錄數據」權限,則會發生此問題。 –

+0

更多關於Microsoft Graph「讀寫目錄數據」的應用程序權限也不起作用。只有Windows Azure Active Directory的權限「讀取和寫入目錄數據」工作。 –

0

這裏有兩個問題;

1)用於添加所有者graph.microsoft.io/en-us/docs/api-reference/v1.0/api/...(以下一種範圍的錯誤的載文執行該API是必需的問題# :Group.ReadWrite.All或Directory.ReadWrite.All或Directory.AccessAsUser.All),它需要兩個Directory.ReadWrite.All AND Group.ReadWrite.All,

版本#2)天青AD門戶不如果從Windowes AzureAD中刪除「讀取和寫入目錄數據」權限,請從Directory Writer角色中刪除應用程序服務主體App

相關問題