Azure日志警报权限问题求助:查看详情提示未授权
Azure警报权限问题解决方案
1. 错误信息对应的权限问题
错误You are not authorized to perform access alert/read over scope SubB/RG/alerts直接说明:你的同事在订阅B目标资源组(RG)的alerts资源范围没有alert/read权限,Azure拒绝其读取该范围内的警报相关数据。
2. 警报在订阅A却引用订阅B的原因
基于日志的警报依赖订阅B的Log Analytics工作区(LAW),点击「查看警报详情」时,系统会同时访问两个订阅的资源:
- 订阅A里的警报定义
- 订阅B的LAW中触发警报的原始日志和关联上下文
错误里的SubB/RG/alerts是系统拉取订阅B中警报关联日志上下文时检查的权限范围,不是说警报定义在订阅B。
3. 查看警报详情需要的具体权限
同事得同时具备以下权限:
- 订阅A侧:至少有
Monitoring Reader角色(或者包含Microsoft.AlertsManagement/alerts/read权限的自定义角色),用来读取订阅A的警报定义。 - 订阅B侧:
- LAW所在资源组或LAW本身的
Log Analytics Reader权限,确保能读取日志数据 - 订阅B对应资源组或订阅级别的
Monitoring Reader角色(或含Microsoft.AlertsManagement/alerts/read的自定义角色),解决错误里的alert/read权限缺失问题。
- LAW所在资源组或LAW本身的
4. 额外需要检查的配置项
- 角色作用域:确认订阅B的
Monitoring Reader或自定义角色的作用域覆盖了错误里的SubB/RG/alerts(也就是LAW所在的资源组,或者更上层的订阅/管理组) - 自定义角色验证:如果用了自定义角色,检查是否包含
Microsoft.AlertsManagement/alerts/read和Microsoft.OperationalInsights/workspaces/read这两个核心权限 - 条件访问策略:排查有没有Azure AD条件访问策略限制同事访问订阅B的资源
- 直接访问测试:让同事直接登录Azure门户,尝试访问订阅B的LAW和对应资源组下的警报内容,验证权限是否生效
内容的提问来源于stack exchange,提问作者Auto geek
相关产品推荐
相关产品推荐

