• 首页
  • 文章
  • PowerShell脚本与企业微信或钉钉机器人的Webhook对接,实现实时手机告警提醒

PowerShell脚本与企业微信或钉钉机器人的Webhook对接,实现实时手机告警提醒

编辑:TopSSL.cn
来源:TopSSL.cn
浏览量:108
  
2025-12-27 06:09

将PowerShell脚本与企业微信或钉钉机器人对接,可以实现证书过期的实时手机告警。这通常通过调用机器人的Webhook接口完成。
阅读:PowerShell脚本自动检查证书过期日期并发送报警通知的方法

1.获取机器人Webhook地址

  • 企业微信:在群聊右上角选择“群机器人”,点击“添加机器人”,设置名称后即可获得一个以 https://qyapi.weixin.qq.com/...开头的URL。
  • 钉钉:在群设置中选择“智能群助手”,添加“自定义”机器人。注意需配置“安全设置”(建议设置关键字为“证书”),获取以 https://oapi.dingtalk.com/...开头的URL。

2.PowerShell告警推送脚本

您可以将此函数集成到之前的证书检查脚本中:

PowerShell

function Send-WebhookAlarm {
    param (
        [string]$Message,
        [string]$WebhookUrl = "您的机器人Webhook地址"
    )

    # 构造符合机器人接口规范的JSON数据
    $payload = @{
        msgtype = "text"
        text = @{
            content = "【SSL证书过期预警】`n$Message"
        }
    } | ConvertTo-Json -Depth 3

    # 使用UTF-8编码发送POST请求
    Invoke-RestMethod -Uri $WebhookUrl -Method Post -Body ([System.Text.Encoding]::UTF8.GetBytes($payload)) -ContentType "application/json; charset=utf-8"
}

# 调用示例:
# if ($cert.NotAfter -lt $deadline) {
#    $msg = "域名:$($cert.Subject) `n到期时间:$($cert.NotAfter)"
#    Send-WebhookAlarm -Message $msg
# }

3.部署建议

  • 安全设置:请勿将包含Webhook地址的脚本上传至GitHub等公开平台,防止机器人被恶意调用发送垃圾信息。
  • 内容格式:企业微信和钉钉均支持Markdown格式。如果您希望告警信息更美观(如使用红色文字或标题),可以将 msgtype改为 markdown并调整 content内容。
  • 任务计划:建议在服务器上设置“任务计划程序”,每天凌晨运行一次脚本。这样即便您不在电脑旁,手机也能第一时间收到过期提醒。
北京SSL证书申请

SSL证书的组织部,锁定安全,加密信任,让网站安全不再是难题!
企业使用OA SSL证书,让你的网站马上变安全, 申请SSL证书?找我!简单、快捷、专业!

即刻扫码 咨询技术
证书技术支持
139-1050-5354
欢迎打扰
热      情
SSL证书 | 免费SSL证书申请、安装、管理与安全指南
企业OV SSL证书申请
139-1050-5354
真诚合作 欢迎咨询