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

Runbook解析AAD日志遇权限错误:缺少MSGraph权限AuditLog.Read.All

解决Get-AzureADAuditSignInLogs权限不足问题

问题根源

Security Reader是Azure RBAC角色,仅管控Azure资源(如订阅、资源组)的访问权限,但Get-AzureADAuditSignInLogs调用的是Microsoft Graph API,需要的是Graph平台专属的应用权限——这两套权限体系完全独立,因此Security Reader角色无法满足Graph API的权限要求。

修复步骤

  • 给自动化账户的托管标识添加Microsoft Graph应用权限AuditLog.Read.All
    1. 打开Azure门户,进入Azure Active Directory -> 企业应用程序,搜索并选中你的托管标识(系统分配的托管标识会出现在此列表中)
    2. 在应用详情页左侧点击权限 -> 添加权限
    3. 选择Microsoft Graph -> 应用权限
    4. 在权限列表中找到AuditLog.Read.All(归类在AuditLog分类下),勾选后点击添加权限
    5. 点击授予管理员同意(需持有Global Administrator或Privileged Role Administrator权限)
  • 确保Runbook中用托管标识正确完成认证
    • 推荐使用Microsoft Graph PowerShell模块替代旧版AzureAD模块,认证及调用示例:
      # 通过托管标识认证到Microsoft Graph
      Connect-MgGraph -Identity
      # 获取登录日志
      Get-MgAuditLogSignIn
      
    • 若必须使用AzureAD模块,需确保模块版本支持托管标识,认证代码如下:
      Connect-AzureAD -Identity
      Get-AzureADAuditSignInLogs
      

验证与注意事项

  • 权限授予后通常需要5-10分钟生效,请勿立即进行测试
  • 可通过以下命令验证托管标识的权限是否配置成功:
    Connect-MgGraph -Identity
    Get-MgServicePrincipal -Filter "displayName eq '你的托管标识名称'" | Select-Object -ExpandProperty AppRolesAssignedTo
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 09:50:36