AAD图形用户补丁授权问题

时间:2018-11-01 18:57:33

标签: azure-active-directory azure-ad-graph-api

在尝试PATCH具有AAD Graph的用户实体(在B2C租户中)时,出现了未经授权的错误。使用带有对称密钥的Client Creds流获取的令牌具有Directory.ReadWrite.All资源的graph.windows.net权限。我想念什么? (也许必须使用X509来获取令牌吗?)

Response:
{"odata.error":{"code":"Authorization_RequestDenied","message":{"lang":"en","value":"Insufficient privileges to complete the operation."}}}


Request
https://graph.windows.net/xyz.onmicrosoft.com/users/c064a6a5-...1f5a0?api-version=1.6
Content-Type: application/json
Content-Length: 241
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6IndVTG1ZZnNxZFF1V3RWXy1oeFZ0REpKWk00USIsImtpZCI6IndVTG1ZZnNxZFF1V3RWXy1oeFZ0REpKWk00USJ9.eyJhdWQiOiJodHRwczovL2dyYXBoLndpbmRvd3MubmV0LyIsImlzcyI6Imh0dHBzOi8vc3RzLndpbmRvd3MubmV0LzQwZmFiMTlkLTQ0ZjctNDY4MS04YTBhLWIyY2FlMzQ1ZGUwMy8iLCJpYXQiOjE1NDEwODU1MzUsIm5iZiI6MTU0MTA4NTUzNSwiZXhwIjoxNTQxMDg5NDM1LCJhaW8iOiI0MlJnWUZqL09ubUNscnpiTEZ1VFRVcytaQ1ZOQUFBPSIsImFwcGlkIjoiNDU1YzVjMzgtNDhlOC00MWZiLWEzMmMtZmQyZTc2YTc0YzllIiwiYXBwaWRhY3IiOiIxIiwiaWRwIjoiaHR0cHM6Ly9zdHMud2luZG93cy5uZXQvNDBmYWIxOWQtNDRmNy00NjgxLThhMGEtYjJjYWUzNDVkZTAzLyIsIm9pZCI6IjFmZGQzNDllLTUxZjMtNDkwNy05ZTg0LTZhMWQ5NjVmYWU3NyIsInJvbGVzIjpbIkRpcmVjdG9yeS5SZWFkV3JpdGUuQWxsIl0sInN1YiI6IjFmZGQzNDllLTUxZjMtNDkwNy05ZTg0LTZhMWQ5NjVmYWU3NyIsInRlbmFudF9yZWdpb25fc2NvcGUiOiJOQSIsInRpZCI6IjQwZmFiMTlkLTQ0ZjctNDY4MS04YTBhLWIyY2FlMzQ1ZGUwMyIsInV0aSI6Ii1XV0EwVjA3elVhbUdrZjA0TUFiQUEiLCJ2ZXIiOiIxLjAifQ.ZAARkTCSK1MYDj3TnDY8djUxienvmNySn0sNR1iZ4eDdYLSrtqjVG2E9EL4nlSYIIP92HZ6io3MdASxsfHrbZaSTvgy6gqe2dNJZ_aWh23TyHop3q5ctLCTqQpNEP1AGcq6vnXk2ceN5CMXkzK1d8R3Zlwa3ICo7lWFDKDEea0_Y87Hvm8U2-zjgzhqAiZi6sH3u7BxiZBqWop4Jn9Wddv2qq_lGU7UuzEwbTMFQ87BKWvts3K_H4UnzZDvDrwSi_GrwvG9VBQ1ST66qhGLRESnW0u_

1 个答案:

答案 0 :(得分:1)

  

尝试使用AAD图修补用户实体时,我得到了未授权的错误

我想您正在对reset a user's password使用aad图。

doc所述,对于Directory.ReadWrite.All,无权重置用户密码。

enter image description here

如果您想重设密码(文档中也已经提到过),则应使用delegated作用域User.ReadWrite.AllDirectory.AccessAsUser.All权限。

  

重要

     

重置用户密码需要delegated范围User.ReadWrite.AllDirectory.AccessAsUser.All。除了正确的作用域之外,已登录的用户还需要足够的特权来重置其他用户的密码。

相关问题