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

使用联合凭据时azure.identity调用get_token报错求助

问题详情

场景与配置

配置了基于联合凭据登录Azure CLI的GitHub Actions流水线,登录步骤运行正常,流水线配置代码如下:

env:
  ARM_USE_OIDC: true

steps:
- name: az login
  uses: azure/login@v1
  with:
    client-id: ${{ env.ARM_CLIENT_ID }}
    tenant-id: ${{ env.ARM_TENANT_ID }}
    subscription-id: ${{ env.ARM_SUBSCRIPTION_ID }}

异常现象

后续执行包含Python代码、Terraform运行的pytest任务时:

  • 通过subprocess调用的常规Az Cli/Terraform命令可正常执行
  • 使用AzureCliCredential或DefaultAzureCredential调用get_token时失败,报错如下:

ERROR: AADSTS700024: Client assertion is not within its valid time range. Current time: 2023-12-19T07:20:31.3554289Z, assertion valid from 2023-12-19T05:59:24.0000000Z, expiry time of assertion 2023-12-19T06:04:24.0000000Z

前置背景

此前采用证书认证方式时,相同代码可正常运行。

补充信息

  • 疑问:实际获取到的令牌有效期显示正常,与报错信息中的时间范围不符
  • 推测:GitHub颁发的底层OIDC令牌仅5分钟有效期,导致原本1小时有效期的OAuth令牌无法正常生效

相关已知问题

  • Azure/login项目的Issue #372
  • Azure/login项目的Issue #180

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.03 19:12:42