若要解决常见授权错误,请尝试针对与你遇到的错误最接近的错误描述的步骤。 可能会出现多个错误。 你还可以查看 Microsoft Q&A 上已有的 401 错误和 403 错误相关的答案。 如果找不到问题的解决方案,请在 Microsoft Q&A 上提出一个新问题 ,并使用 microsoft-graph*进行标记。
401 未授权错误:你的令牌是否有效?
请确保你的应用程序在请求中向 Microsoft Graph 提供有效的访问令牌。 此错误通常意味着 HTTP 身份验证请求标头中可能缺少访问令牌,或者令牌无效或已过期。 强烈建议使用 Microsoft 身份验证库 (MSAL) 获取访问令牌。 此外,如果你尝试使用授予个人 Microsoft 帐户的委派访问令牌来访问仅支持工作或学校帐户(组织帐户)的 API,则可能会发生此错误。
403 禁止错误:你是否选择了正确的权限集?
根据您的应用调用的 Microsoft Graph API,验证你是否请求了正确的权限集。 所有 Microsoft Graph API 方法参考文章中都提供了建议的最低特权权限。 此外,用户或管理员必须向应用程序授予这些权限。 授予权限通常通过同意页或使用Microsoft Entra 管理中心应用程序注册边栏选项卡授予权限。
API 服务(如 Microsoft Graph)检查接收的访问令牌中的 aud 声明 (audience) 是否与预期值匹配,如果不匹配,则会导致 403 Forbidden 错误。 导致此错误的常见错误是尝试使用为 Azure AD Graph API、Outlook API 或 SharePoint/OneDrive API 获取的令牌调用 Microsoft Graph(或反之)。 确保你的应用为其获取令牌的资源(或范围)与应用调用的 API 匹配。
400 错误请求或 403 禁止:用户是否符合其组织的条件访问 (CA) 策略?
根据组织的 CA 策略,通过你的应用访问 Microsoft Graph 资源的用户可能会被要求提供附加信息,而这些信息在你的应用最初获取的访问令牌中并不存在。 在这种情况下,你的应用在获取访问令牌期间会收到 400 以及 interaction_required 错误,或者在调用 Microsoft Graph 时收到 403 以及 insufficient_claims 错误。 在这两种情况下,错误响应都包含可呈现给授权终结点的附加信息,以便向用户质询其他信息(如多重身份验证或设备注册)。
刚刚接触 Microsoft Graph? Microsoft Graph 基础知识是一个由多个部分组成的系列,指导你理解 Microsoft Graph 的基本概念。 它将指导你进行实际操作,了解如何使用 Microsoft Graph API 请求以开始利用 Microsoft 365 数据开发或增强应用程序。