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

Graph API可获取租户用户信息,无法获取部分用户mailFolders数据

问题排查与解决方案

1. 明确权限类型与适用场景

你当前的核心问题是权限类型不匹配:

  • 若使用委派权限(Delegated):Mail.Read 委派权限仅能访问当前登录用户的 mailFolders,无法跨用户访问。要访问其他用户的邮件文件夹,需配置 Mail.Read.Shared 或 Mail.ReadWrite.Shared 委派权限,且目标用户需与登录用户共享邮件文件夹。
  • 若要无限制访问租户内任意用户的 mailFolders,必须使用应用权限(Application)下的 Mail.Read,且需全局管理员完成管理员同意操作。

2. 检查应用权限的管理员同意状态

登录Azure AD门户,找到你的应用:

  • 进入「API权限」页面,确认 Mail.Read(类型为「应用权限」)的状态是「已授予[你的租户名]的管理员同意」。
  • 若状态为「需要管理员同意」,请全局管理员点击「授予管理员同意」按钮,等待5-10分钟让权限生效。

3. 在Graph Explorer中切换到应用权限模式

Graph Explorer默认使用委派权限,需手动切换:

  • 点击Graph Explorer右上角的「权限」面板,切换到「应用权限」标签。
  • 勾选 Mail.Read 权限,点击「同意」(需用全局管理员账号操作)。
  • 重新调用API GET https://graph.microsoft.com/v1.0/users/{user-email}/mailFolders,此时使用的是应用身份,而非登录用户的委派身份。

4. 清理无效权限与冗余配置

  • Mail.ReadBasic.All 仅能获取用户的基本邮件元数据,无法访问 mailFolders,可从应用权限中移除该权限,避免混淆。
  • 应用权限模式下无需将用户添加到企业应用中(仅委派权限需要分配用户),之前的相关操作属于无效配置。

5. 排查目标用户邮箱的限制

  • 确认目标用户邮箱处于活跃状态,未被禁用或归档。
  • 检查目标用户邮箱是否设置了信息屏障或邮件访问限制,若有需调整允许应用访问的规则。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 08:15:35