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

Azure Graph API运行40-45小时后出现对象不存在异常求助

问题:Azure Graph API 长时间运行后出现资源不存在异常
  • 操作场景:使用Azure Graph API对Azure Active Directory的用户和组执行创建、删除操作,调用的API端点:
    • 用户:https://graph.microsoft.com/v1.0/users
    • 组:https://graph.microsoft.com/v1.0/groups
  • 认证方式:通过MSAL4J库的PublicClientApplication,结合UserNamePasswordParameters的acquireToken方法获取令牌,并用acquireTokenSilently从缓存读取令牌
  • 问题现象:应用持续运行约50小时,在40-45小时左右,所有用户和组相关API请求均返回异常:

    Resource 'Random_ObjectID' does not exist or one of its queried reference-property objects are not present.

  • 附加信息:服务器端审核日志已提供

排查建议

  1. 令牌有效性验证
    • 异常触发时,打印acquireTokenSilently获取的令牌过期时间(exp字段)和权限范围,确认是否因令牌过期、静默获取失败未捕获,导致使用无效令牌发起请求。
    • 检查MSAL缓存逻辑,确认令牌过期后是否自动回退到acquireToken重新获取有效令牌,排查缓存更新机制是否存在异常。
  2. ObjectID关联排查
    • 确认异常中的Random_ObjectID是请求的目标资源ID,还是令牌关联的用户/服务主体ID:
      • 若为目标资源ID:排查该资源是否被提前删除,或并发操作导致资源状态不一致;
      • 若为令牌主体ID:检查对应账号是否被禁用、删除,或权限被管理员撤销。
  3. 会话与权限生命周期检查
    • 查看Azure AD租户的会话超时设置,确认是否在40-45小时左右触发会话过期,导致用户名密码流的令牌无法正常刷新。
    • 确认应用的API权限是否有变更,排查管理员是否修改了权限配置,导致令牌权限失效。
  4. 请求上下文校验
    • 检查异常触发时的请求参数,确认是否存在引用已删除资源的情况(比如创建组时关联了已删除的用户)。
    • 启用Graph API详细日志,对比正常请求与异常请求的令牌信息、请求体,定位上下文差异。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.23 06:06:17