自动清理过期AWS ACM证书与人工审批工作流 | n8n工作流 | AWS ACM管理
AWS ACM证书清理,n8n工作流,SSL证书管理,Slack审批,自动化运维,AWS证书生命周期,DevOps自动化,IT运维

# 自动清理过期AWS ACM证书与人工审批工作流

> 通过Slack审批自动化清理过期的AWS ACM证书。该工作流通过检测过期的SSL证书、向管理员发送详细的Slack通知,并在获得批准后删除证书,帮助维护安全整洁的AWS环境,确保证书生命周期管理的完全可见性和控制。

## 🧑‍💼 适用人群

该工作流专为以下人员设计:
– **AWS管理员**:希望保持环境清洁和安全
– **DevOps团队**:管理AWS ACM中的SSL生命周期
– **IT管理员**:需要过期证书删除的可见性和控制
– 使用**Slack进行协作和审批**的团队

## ⚙️ 工作原理/功能

此自动化工作流按**每日计划**执行以下任务:
1. **获取AWS账户中的所有ACM证书**
2. **筛选出过期证书**:通过比较过期日期和状态
3. **发送Slack审批消息**:包含证书详细信息给管理团队
4. **等待Slack中的审批响应**(✅ 批准删除)
5. 如果获得批准,使用AWS ACM**删除过期证书**
6. 最后,**通知IT管理员**所采取的操作

## 🔧 设置方法

### 创建工作流
添加以下节点:
– `Schedule Trigger`
– `AWS – ACM: listCertificates`
– `AWS – ACM: describeCertificate`(每个证书循环)
– `IF Node` 筛选过期证书
– `Slack – Send & Wait for Reaction`
– `AWS – ACM: deleteCertificate`
– `Slack – Post Message` 用于通知

### 配置Slack
创建具有以下权限的**Slack Bot Token**:
– `chat:write`
– `reactions:read`
– `channels:read`
在Slack节点中连接它。

### 配置AWS凭据
使用具有以下权限的IAM用户或角色:
– `acm:ListCertificates`
– `acm:DescribeCertificate`
– `acm:DeleteCertificate`

### 设置计划
每日、每周或自定义cron表达式。

## 📋 要求

| 组件 | 描述 |
|——|——|
| AWS ACM访问 | ACM操作的IAM权限 |
| Slack Bot Token | 具有 `chat:write` 和 `reactions:read` 权限 |
| n8n环境 | 自托管或n8n Cloud |
| Slack频道 | 审批消息发送的频道 |

## 🛠️ 工作流自定义

### 🕒 更改等待时间
在`sendAndWait`节点中调整检查Slack反应前的等待时间(默认1小时)。

### 👥 更改Slack目标
更改Slack频道或标记特定人员(“)。

### 📓 添加日志记录
添加Google Sheets、Notion或DynamoDB来记录证书详细信息和审批决策。

### 🧪 添加试运行/测试模式
在删除前使用IF节点,当`ENV === dry-run`时模拟删除。

## 工作流节点说明

### 1. Schedule Trigger
工作流按计划启动(例如每天09:00),无需人工干预自动检查ACM证书。

### 2. Get Certificates
获取配置的AWS区域中的所有ACM证书,包括域名、状态和过期日期等详细信息。

### 3. Filter Expired Certificates Only
检查每个证书,仅保留已过期的证书。

### 4. Notify via Slack and Wait for Approval
发送包含证书详细信息(域名、ARN、过期日期、状态)的Slack消息。工作流在此暂停,直到用户点击**批准**或**拒绝**。

### 5. Delete Expired Certificate
如果在Slack中选择**批准**,工作流触发AWS ACM自动删除证书。如果点击**拒绝**,则不采取任何操作,工作流结束。

### 6. Notify admin via Slack
通过Slack通知管理员操作结果。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。