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

如何利用azure.identity结合已有令牌创建GraphServiceClient?

使用Azure Identity + Microsoft Graph Python SDK基于已有Refresh Token构建客户端

直接用azure.identity中的RefreshTokenCredential类就能实现你的需求,它会自动处理access token过期时的刷新逻辑,无需手动调用刷新接口。

步骤1:安装依赖

确保安装必要的包:

pip install azure-identity msgraph-sdk

步骤2:初始化凭证与Graph客户端

from azure.identity import RefreshTokenCredential
from msgraph import GraphServiceClient

# 替换为你的实际参数
tenant_id = "你的Azure AD租户ID"
client_id = "你的应用客户端ID"
client_secret = "你的应用客户端密钥"
refresh_token = "你持有的Refresh Token"

# 创建RefreshToken凭证,自动处理令牌刷新
credential = RefreshTokenCredential(
    tenant_id=tenant_id,
    client_id=client_id,
    client_secret=client_secret,
    refresh_token=refresh_token
)

# 构建Graph Service客户端
graph_client = GraphServiceClient(credential)

步骤3:发起Graph API请求

以获取当前用户信息为例:

try:
    user = graph_client.me.get()
    print(f"用户名: {user.display_name}, 邮箱: {user.mail}")
except Exception as e:
    print(f"请求失败: {e}")

关键说明

  • RefreshTokenCredential会自动检测access token的过期状态,到期时自动用refresh token获取新的access token和refresh token
  • 确保你的refresh token拥有调用目标Graph API所需的权限范围
  • 客户端密钥请勿硬编码在代码中,建议通过环境变量或密钥管理工具注入

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 14:57:20