You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure AD/Microsoft Graph访问权限升降级实现方案问询

Azure AD/Microsoft Graph 权限升降级实现方案

当然可以实现Azure AD/Microsoft Graph权限的升降级操作,我来给你详细拆解具体的实现方式和步骤:

一、权限升级流程

当用户已经通过仅登录权限(比如User.Read)完成Web应用注册后,要升级获取OneDrive访问权限(比如Files.ReadWrite),可以通过增量授权来实现:

  • 调整你的授权请求URL,在原有的scope参数中新增需要的权限范围。比如原来的scope是openid profile User.Read,现在更新为openid profile User.Read Files.ReadWrite。
  • 引导用户重新进入授权流程,用户同意新增的权限后,你的应用就能获取包含新权限的访问令牌,之后调用Microsoft Graph时就可以访问OneDrive资源了。

二、权限降级(撤销授权)与重新授权

你提到找不到撤销授权的途径,其实有两种可行的方式:

方式1:用户手动撤销授权

用户可以登录自己的微软账户,进入「安全」板块,找到「应用和服务」下的「已授权的应用」,定位到你的Web应用后直接撤销授权。撤销完成后,用户再次访问你的应用时,你可以只请求仅登录权限,就能完成权限降级。

方式2:通过Microsoft Graph API主动撤销

你可以通过API主动撤销用户对应用的权限授予,步骤如下:

  1. 先调用GET /users/{user-id}/oauth2PermissionGrants接口,获取该用户名下所有的权限授予记录,找到对应你应用的grant-id。
  2. 调用DELETE /users/{user-id}/oauth2PermissionGrants/{grant-id}接口,删除对应的权限授予记录。
  3. 撤销完成后,引导用户重新授权,此时仅请求登录相关权限(比如openid profile User.Read),就能实现权限降级回仅登录状态。

三、关键注意事项

  • 增量授权前,确保你的应用已在Azure AD注册门户中添加了需要新增的权限(比如Files.ReadWrite),如果是需要管理员同意的权限,还要先完成管理员同意流程。
  • 使用API主动撤销授权时,你的应用需要拥有DelegatedPermissionGrant.ReadWrite.All或Directory.AccessAsUser.All权限,并且调用时要使用有效的用户或应用身份令牌。
  • 权限变更后,记得刷新应用获取的访问令牌,确保新的权限设置生效。

内容的提问来源于stack exchange,提问作者user9465677

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 09:32:38