我正嘗試使用Microsoft Graph API來更新Active Directory中的其他用戶。Microsoft Graph API - 沒有足夠的權限來完成操作
我在https://apps.dev.microsoft.com/
我請求以下範圍既爲用戶和應用程序設置以下權限:
- Directory.ReadWrite.All
- User.ReadWrite.All
- Group.ReadWrite.All
我能夠得到一個listi目錄中的所有用戶的NG,但試圖更新時(在這種情況下,city
)失敗:
GraphServiceClient graphClient = SDKHelper.GetAuthenticatedClient();
var usersResponse = graphClient.Users.Request().GetAsync();
var users = usersResponse.Result;
// hard coding user id for now
var userId = "9a5b83cd-85ff-4ad1-ab2f-b443941a518e";
var user = users.FirstOrDefault (m => m.Id == userId);
if (user != null) {
user.City = "New York";
await graphClient.Me.Request().UpdateAsync (user);
}
我得到:
{
Code : Authorization_RequestDenied
Message : Insufficient privileges to complete the operation.
Inner error
}
我登錄的用戶作爲一個目錄的全局管理員。
我接過令牌JWT,領導交給https://jwt.io,這些都是我看到的角色:
- Directory.Read.All
- Directory.ReadWrite.All
- Files.ReadWrite
- Group.ReadWrite.All
- Mail.Send
- User.Read
- User.Read.All
- User.ReadWrite.All
我是否需要其他權限來實現這一目標?
在一天結束時,我想創建一個控制檯應用程序(而不是Web應用程序),以便可以更新目錄中的其他用戶信息。但我認爲使用Microsoft提供的這個示例應用程序是一個好的開始。