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

调用Microsoft Graph API security alerts_v2遇403未授权(账户未预配)问题

解决Azure App Registration调用Microsoft Graph安全API时的"Account is not provisioned"错误

针对你遇到的调用/security/alerts_v2接口返回的Unauthorized request - Account is not provisioned错误,结合你已确认令牌包含所需权限的情况,以下是几个关键排查和解决步骤:

1. 确认客户租户的安全服务已启用并完成初始化

该错误核心原因通常是租户未启用对应的Microsoft安全服务(如Microsoft Defender for Cloud、Microsoft Defender for Endpoint等),或服务尚未完成初始化流程:

  • 登录客户Azure门户,检查Microsoft Defender for Cloud是否已启用对应订阅,且完成了基础配置(如关联Log Analytics工作区);
  • 若客户使用Microsoft Defender for 365,确认服务已激活,且租户中至少存在一条安全告警(新启用的租户可能需要等待服务生成初始数据)。

2. 验证管理员同意权限是否完全生效

尽管你已点击"授予管理员同意",但可能存在权限同步延迟或未正确应用的情况:

  • 进入客户Azure AD的企业应用,找到名称为Defender-Logs的应用,查看权限选项卡,确认所有添加的Microsoft Graph应用权限状态为已授予;
  • 可通过PowerShell命令直接查询应用的权限分配状态:
    Install-Module Microsoft.Graph -Scope CurrentUser
    Connect-MgGraph -TenantId <客户租户ID> -Scopes Application.Read.All
    Get-MgServicePrincipal -Filter "displayName eq 'Defender-Logs'" | Select-Object -ExpandProperty AppRolesAssignedTo
    
  • 若权限状态异常,尝试由全局管理员或权限管理员重新授予一次管理员同意。

3. 检查条件访问策略是否限制了应用访问

部分租户的条件访问策略可能会阻止客户端凭证流的API访问:

  • 进入客户Azure AD的条件访问,检查是否存在针对"云应用或操作"为Microsoft Graph的策略,是否限制了Defender-Logs应用的访问;
  • 确认租户未启用"安全默认值"中对客户端凭证流的限制(若启用,需添加该应用到允许列表)。

4. 确认令牌的租户和受众正确性

解码后的令牌需满足以下条件:

  • tid字段值与客户的directory tenant id完全一致;
  • aud字段值为https://graph.microsoft.com,确保令牌是针对Microsoft Graph API生成的。

5. 等待服务配置同步

若客户租户是新启用的安全服务,可能需要等待1-24小时让服务完成后台配置和数据同步,之后再尝试调用API。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 20:46:14