如何在 Systems Manager 中更好地管理修补通知?

2 分钟阅读
0

我想使用 Amazon Simple Notification Service(Amazon SNS)在 AWS Systems Manager 中创建修补通知。

简短描述

您可以通过将 Amazon SNS 与补丁管理器(AWS Systems Manager 的一项功能)集成为补丁管理器维护时段创建可自定义的通知。

**重要事项:**要创建可自定义的通知,请配置修补维护时段

要使用 Systems Manager 为维护时段修补操作创建通知,请完成以下步骤:

  1. 为修补通知创建并订阅 Amazon SNS 主题
  2. 创建 AWS Identity and Access Management(IAM)策略IAM 角色,以便 Systems Manager 发布到 SNS 主题。
  3. 在您的 Run Command 中指定 SNS 主题,Run Command 是 AWS Systems Manager 的一项功能。

解决方法

为修补通知创建 SNS 主题

首先,创建一个 SNS 主题:

  1. 打开 Amazon SNS 控制台
  2. 选择您在修补的 AWS 区域。
  3. 在导航窗格中,选择主题
  4. 选择创建主题
  5. 选择 FIFO标准
  6. 输入主题的名称。
  7. (可选)根据您的用例配置其余的设置。
  8. 选择创建主题。请注意以下各部分中要使用的 ARN 主题。

然后,使用您的首选联系方式订阅该联系人

设置所需的 IAM 策略和角色,以便 Systems Manager 发布到 SNS 主题

首先,设置所需的 IAM 策略:

1.    打开 IAM 控制台

2.    在导航窗格中,选择策略,然后选择创建策略

3.    选择 JSON 选项卡。

4.     将默认 JSON 内容替换为以下内容:

**注意:**将 REGION 替换为您正在使用的区域,并将 ACCOUNT-ID 替换为您的 AWS 账户 ID。将 SNS-TOPIC-NAME 替换为您的 SNS 主题的名称。

{  
    "Version": "2012-10-17",  
    "Statement": [
    {  
            "Effect": "Allow",  
            "Action": ["sns:Publish"],  
            "Resource": "arn:aws:sns:{REGION}:{ACCOUNT-ID}:{SNS-TOPIC-NAME}"
    }  
    ]  
}

**注意:**您可以在 ARN 下的 SNS 主题页面中找到您的主题的特定资源 ARN。

5.    选择下一步: 标记

6.    (可选)添加一个或多个标记密钥值对以组织、跟踪或控制此策略的访问权限。然后,选择下一步: 审核

7.    输入内联策略的名称。

8.    (可选)输入策略的描述。

9.    选择创建策略

然后,设置所需的 IAM 角色:

1.    打开 IAM 控制台

2.    在导航窗格中,选择角色,然后选择创建角色

3.    选择 AWS 服务角色类型,然后选择 Systems Manager。选择 Systems Manager 用例。

4.    在附加权限策略页面上,搜索您在上一节中创建的策略。然后,选择自定义策略的名称。

5.    (可选)设置权限边界。有关详细信息,请参阅 IAM 实体的权限边界

6.    选择下一步

7.    输入角色名称和角色描述。

8.    选择编辑(在步骤 1: 选择可信实体步骤 2: 选择权限部分中),以编辑角色的用例和权限。

9.    查看角色,然后选择创建角色。请注意以下部分的 IAM 角色名称。

要在维护时段中使用此角色,必须编辑维护时候服务角色,允许传递新创建的角色。对于资源,请指定您创建的角色的 ARN。有关详细信息,请参阅使用控制台配置维护时段的权限

要完成 IAM 角色设置,请创建新策略,或使用以下值更新维护时候的内联策略:

**注意:**将 ACCOUNT-ID 替换为您的账户 ID,将 SNS-TOPIC-NAME 替换为您的 SNS 主题名称。

{  
    "Version": "2012-10-17",  
    "Statement": [  
        {               
            "Effect": "Allow",  
            "Action": "iam:PassRole",  
            "Resource": "arn:aws:iam::{ACCOUNT_ID}:role/{SNS-TOPIC-ROLE}"             
        }  
    ]  
}

在 Run Command 中指定 SNS 主题

在 Run Command 中指定 SNS 主题:

  1. 打开 AWS Systems Manager 控制台
  2. 在导航窗格中,选择维护时段
  3. 选择执行修补的维护时段。
  4. 对于任务,选择 AWS-RunPatchBasline Run Command 任务或其他您想收到通知的 Run Command 任务,然后选择编辑
  5. 对于 SNS 通知,请选择启用 SNS 通知
  6. 输入您在上一部分中创建的 IAM 角色
  7. 输入您在上一部分中创建的 SNS 主题 ARN。
  8. (可选)对于事件类型,选择您想收到通知的事件类型。例如,超时和尝试失败
  9. 选择保存更改

现在,已针对您为修补维护时段选择的命令和事件类型设置好了 SNS 通知。

以下是电子邮件通知示例:

{"commandId":"abcdef12-1234-1234-1234-abcdef123456",  
"documentName":"AWS-RunPatchBaseline",  
"instanceId":"i-abcdefg1234567",  
"requestedDateTime":"2023-01-01T00:00:00.000Z",  
"status":"Failed",  
"detailedStatus":"Failed",  
"eventTime":"2023-01-1T00:02:00.00Z"}
AWS 官方
AWS 官方已更新 1 年前