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

未注册Azure应用,能否用Personal Access Token调用Graph API获取Outlook用户?

关于用Personal Access Token (PAT)调用Microsoft Graph API的问题解答

不能用Personal Access Token (PAT)替代Microsoft Graph API所需的AccessToken,原因如下:

  • PAT是专为Azure DevOps、GitHub等特定开发服务设计的令牌,它的受众(audience)指向这些服务的资源端点,而非Microsoft Graph API(要求受众为https://graph.microsoft.com)。身份验证时,Graph API会校验令牌的受众和签名,PAT不符合要求,因此会返回InvalidAccessToken错误。

如果不想在Azure AD中注册应用,可考虑以下替代方式获取合法的Graph AccessToken:

  • 用户名密码流(ROPC):直接使用组织内用户的用户名和密码请求AccessToken,无需提前注册应用(但需确保用户账号未启用多因素认证,且该方式安全性较低,不建议生产环境使用)。请求示例:
    POST https://login.microsoftonline.com/{tenant-id}/oauth2/v2.0/token
    Content-Type: application/x-www-form-urlencoded
    
    client_id=00000000-0000-0000-0000-000000000000&
    scope=https://graph.microsoft.com/Mail.Read&
    username=user@contoso.com&
    password=p@ssw0rd&
    grant_type=password
    
    注:这里的client_id可使用微软提供的公共客户端ID,比如Microsoft Graph Explorer对应的ID,但该方式功能受限较多。
  • 设备授权流:适合无浏览器的终端设备,用户通过另一台设备的浏览器输入验证代码完成身份认证,同样可使用公共客户端ID,无需自行注册应用。

需要注意的是,即使使用上述方式,本质上仍依赖Azure AD的身份验证体系,只是不需要自行创建应用注册。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 00:45:49