Azure应用注册密钥过期无通知,如何设置到期告警?
Azure应用注册Client Secret到期通知解决方案
内置门户通知配置
- 进入目标应用注册的「证书和密码」页面,找到需监控的Client Secret,点击「编辑」,设置到期前通知(支持提前7、14、30天等选项),通知将发送至订阅管理员的关联邮箱。
- 确保Azure门户右上角「通知中心」(铃铛图标)已开启「服务健康」类通知订阅,包含应用注册密钥到期相关事件的推送。
Azure Monitor警报规则
- 进入Azure Monitor,选择「警报」>「创建」>「警报规则」
- 目标资源选择对应的应用注册(资源类型为「应用注册」)
- 信号类型选择「日志」,使用以下Kusto查询作为检测条件(可调整
30d为你需要的预警天数):AuditLogs | where OperationNameValue == "Update application credentials" and ResultType == "Success" | extend ExpiryDate = todatetime(parse_json(TargetResources)[0].modifiedProperties[0].newValue) | where ExpiryDate - now() <= 30d - 设置警报触发逻辑(如查询返回结果时触发),并配置动作组,添加邮件、短信或Webhook等通知方式。
自定义脚本定期检查
- 使用PowerShell或Python编写脚本,调用Microsoft Graph API的
GET /applications/{application-id}接口,提取密钥的endDateTime属性。 - 将脚本部署到Azure自动化账户,设置定期触发计划(如每日运行),当计算出的到期剩余天数小于阈值时,自动发送通知。
Azure Policy强制合规
- 创建自定义Azure Policy,要求所有应用注册的Client Secret必须配置到期前通知,避免因人为遗漏导致无预警过期。
- 策略可设置为审计模式(仅检测不合规资源)或强制模式(自动配置通知)。
内容的提问来源于stack exchange,提问作者Rakesh D
相关产品推荐
相关产品推荐

