连接到 AWS 以收集配置和资源数据

您可以将 Security Command Center Enterprise 层级连接到 Amazon Web Services (AWS) 环境,以便执行以下操作:

  • 检测并修复 AWS 环境中的软件漏洞和错误配置
  • 为 AWS 创建和管理安全状况
  • 识别从公共互联网到高价值 AWS 资产的潜在攻击路径
  • 将 AWS 资源的合规性与各种标准和基准进行对比

将 Security Command Center 连接到 AWS 后,您的安全运营团队可以在一个位置管理和修复Google Cloud 和 AWS 中的威胁和漏洞。

如需让 Security Command Center 监控您的 AWS 组织,您必须使用Google Cloud 服务代理和有权访问您要监控的资源的 AWS 账号来配置连接。Security Command Center 会使用此连接定期收集您定义的所有 AWS 账号和区域中的数据。我们会根据 Google Cloud 隐私权声明,以与处理服务数据相同的方式处理这些数据。

您可以为每个 Google Cloud 组织创建一个 AWS 连接。 连接器使用 API 调用来收集 AWS 资产数据。这些 API 调用可能会产生 AWS 费用。

本文档介绍了如何设置与 AWS 的连接。设置连接时,您需要配置以下内容:

  • AWS 中的一系列账号,可以直接访问您要监控的 AWS 资源。在 Google Cloud 控制台中,这些账号称为收款账号
  • AWS 中具有适当的政策和角色,可对收集器账号进行身份验证的账号。在 Google Cloud 控制台中,此账号称为委托账号委托账号收集器账号必须位于同一 AWS 组织中。
  • Google Cloud 中的服务代理,用于连接到委托的账号以进行身份验证。
  • 用于从 AWS 资源收集资产数据的流水线。
  • (可选)Sensitive Data Protection 分析您的 AWS 内容所需的权限。

连接器未注入 Security Command Center Enterprise 中 SIEM 精选检测功能所需的 AWS 日志。如需了解如何注入这些数据,请参阅连接到 AWS 进行日志注入

此连接不适用于 Security Command Center 的 SIEM 功能,该功能可让您注入 AWS 日志以进行威胁检测。

下图展示了此配置。租户项目是自动创建的项目,其中包含您的资产数据收集流水线实例。

AWS 和 Security Command Center 配置。

准备工作

请先完成以下任务,然后再完成本页面上的其余任务。

在 Google Cloud中设置权限

如需获得使用 AWS 连接器所需的权限,请让您的管理员为您授予 Cloud Asset Owner (roles/cloudasset.owner) IAM 角色。如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限

您也可以通过自定义角色或其他预定义角色来获取所需的权限。

创建 AWS 账号

确保您拥有以下 AWS 资源:

配置 AWS 连接器

  1. 打开设置页面上的连接器标签页。

    前往“连接器”

  2. 选择您已在其中激活 Security Command Center Enterprise 的组织。

  3. 依次选择连接器 > 添加连接器 > Amazon Web Services

  4. Delegated account ID 中,输入您可用作委托账号的 AWS 账号的 AWS 账号 ID。

  5. 如需让 Sensitive Data Protection 分析您的 AWS 数据,请保持选中为 Sensitive Data Protection 发现服务授予权限。此选项会在 CloudFormation 模板中为收集器角色添加 AWS IAM 权限。

    此选项授予的 AWS IAM 权限

    • s3:GetBucketLocation
    • s3:ListAllMyBuckets
    • s3:GetBucketPolicyStatus
    • s3:ListBucket
    • s3:GetObject
    • s3:GetObjectVersion
    • s3:GetBucketPublicAccessBlock
    • s3:GetBucketOwnershipControls
    • s3:GetBucketTagging
    • iam:ListAttachedRolePolicies
    • iam:GetPolicy
    • iam:GetPolicyVersion
    • iam:ListRolePolicies
    • iam:GetRolePolicy
    • ce:GetCostAndUsage
    • dynamodb:DescribeTableReplicaAutoScaling
    • identitystore:ListGroupMemberships
    • identitystore:ListGroups
    • identitystore:ListUsers
    • lambda:GetFunction
    • lambda:GetFunctionConcurrency
    • logs:ListTagsForResource
    • s3express:CreateSession
    • s3express:GetBucketPolicy
    • s3express:ListAllMyDirectoryBuckets
    • wafv2:GetIPSet
  6. (可选)查看并修改高级选项。 如需了解其他选项,请参阅自定义 AWS 连接器配置

  7. 点击继续。系统会打开连接到 AWS 页面。

  8. 从下列选项中选择一项:

    • 使用 AWS CloudFormation 模板,然后下载并查看委托角色和收集器角色的 CloudFormation 模板。

    • 手动配置 AWS 账号:如果您配置了高级选项或需要更改默认的 AWS 角色名称(aws-delegated-roleaws-collector-roleaws-sensitive-data-protection-role),请选择此选项。 复制服务代理 ID、委托角色名称、收集器角色名称和 Sensitive Data Protection 收集器角色名称。

    创建连接后,您无法更改角色名称。

请勿点击保存继续。请改为配置 AWS 环境

配置 AWS 环境

您可以使用以下方法之一设置 AWS 环境:

使用 CloudFormation 模板设置 AWS 环境

如果您下载了 CloudFormation 模板,请按照以下步骤设置 AWS 环境。

  1. 登录 AWS 委托账号控制台。确保您已登录用于代管其他收集器 AWS 账号的委托账号(即 AWS 管理账号或注册为委托管理员的任何成员账号)。
  2. 前往 AWS CloudFormation 模板控制台。
  3. 创建用于配置委托角色的堆栈:

    1. 堆栈页面上,依次点击创建堆栈 > 使用新资源(标准)
    2. 指定模板时,请上传委派角色模板文件。
    3. 指定堆栈详细信息时,输入堆栈名称。
    4. 如果您更改了委托角色、收集器角色或 Sensitive Data Protection 角色的名称,请相应地更新参数。您输入的参数必须与 Google Cloud 控制台中的连接到 AWS 页面上列出的参数一致。

    5. 根据组织的要求,更新堆栈选项。

    6. 查看并创建页面上,选择我确认 AWS CloudFormation 可能会创建具有自定义名称的 IAM 资源。

    7. 点击提交以创建堆栈。

    等待堆栈创建完成。如果出现错误,请参阅问题排查。如需了解详情,请参阅 AWS 文档中的在 AWS CloudFormation 控制台上创建堆栈

  4. 创建用于预配收集器角色的堆栈集。

    1. 使用 AWS 管理账号或注册为委托管理员的任何成员账号,前往 AWS CloudFormation 控制台。

    2. StackSets 页面上,点击创建 StackSet

    3. 点击服务管理的权限

    4. 指定模板时,请上传收集器角色模板文件。

    5. 指定 StackSet 详细信息时,输入堆栈集名称和说明。

    6. 输入委托账号 ID。

    7. 如果您更改了委托角色、收集器角色或 Sensitive Data Protection 角色的名称,请相应地更新参数。您输入的参数必须与 Google Cloud 控制台中的连接到 AWS 页面上列出的参数一致。

    8. 根据组织的要求,配置堆栈集选项。

    9. 指定部署选项时,请选择部署目标。 您可以部署到整个 AWS 组织,也可以部署到包含您要从中收集数据的所有 AWS 账号的组织部门 (OU)。

    10. 指定要在其中创建角色和政策的 AWS 区域。 由于角色是全球性资源,因此您无需指定多个区域。

    11. 根据需要更改其他设置。

    12. 查看更改,然后点击提交以创建堆栈集。如果您收到错误消息,请参阅问题排查。如需了解详情,请参阅 AWS 文档中的使用服务管理的权限创建 CloudFormation StackSet

  5. 如果您需要从管理账号收集数据,请登录管理账号并部署单独的堆栈来预配收集器角色。指定模板时,请上传收集器角色模板文件。

    之所以需要执行此步骤,是因为 AWS CloudFormation 堆栈集不会在管理账号中创建堆栈实例。如需了解详情,请参阅 AWS 文档中的 DeploymentTargets

如需完成集成流程,请参阅完成集成流程

手动配置 AWS 账号

如果您无法使用 CloudFormation 模板(例如,您使用的是其他角色名称或正在自定义集成),则可以手动创建所需的 AWS IAM 政策和 AWS IAM 角色。

您必须为委托账号和收集器账号创建 AWS IAM 政策和 AWS IAM 角色。

为委托角色创建 AWS IAM 政策

如需为委托角色创建 AWS IAM 政策(委托政策),请完成以下操作:

  1. 登录 AWS 委托账号控制台

  2. 依次点击政策 > 创建政策

  3. 点击 JSON,然后粘贴以下 JSON 之一,具体取决于您是否在配置 Security Command Center 中选中了授予敏感数据保护发现权限复选框。

    为 Sensitive Data Protection 发现服务授予权限:已清除

    {
      "Version": "2012-10-17",
      "Statement": [
          {
              "Action": "sts:AssumeRole",
              "Resource": "arn:aws:iam::*:role/COLLECTOR_ROLE_NAME",
              "Effect": "Allow"
          },
          {
              "Action": [
                  "organizations:List*",
                  "organizations:Describe*"
              ],
              "Resource": "*",
              "Effect": "Allow"
          }
      ]
    }
    

    COLLECTOR_ROLE_NAME 替换为您在配置 Security Command Center 时复制的收集器角色名称(默认值为 aws-collector-role)。

    为 Sensitive Data Protection 发现服务授予权限:已选择

        {
          "Version": "2012-10-17",
          "Statement": [
            {
              "Action": "sts:AssumeRole",
              "Resource": [
                "arn:aws:iam::*:role/COLLECTOR_ROLE_NAME",
                "arn:aws:iam::*:role/SCAN_SENSITIVE_DATA_COLLECTOR_ROLE_NAME"
              ],
              "Effect": "Allow"
            },
            {
              "Action": [
                "organizations:List*",
                "organizations:Describe*"
              ],
              "Resource": "*",
              "Effect": "Allow"
            }
          ]
        }
        

    替换以下内容:

    • COLLECTOR_ROLE_NAME:您在配置 Security Command Center 时复制的配置数据收集器角色的名称(默认值为 aws-collector-role
    • SCAN_SENSITIVE_DATA_COLLECTOR_ROLE_NAME:您在配置 Security Command Center 时复制的 Sensitive Data Protection 收集器角色的名称(默认值为 aws-sensitive-data-protection-role
  4. 点击下一步

  5. 政策详情部分中,输入政策的名称和说明。

  6. 点击创建政策

为 AWS 与 Google Cloud之间的信任关系创建 AWS IAM 角色

创建委托角色,在 AWS 和Google Cloud之间建立信任关系。此角色使用在为委托角色创建 AWS IAM 政策中创建的委托政策。

  1. 以可以创建 IAM 角色和政策的 AWS 用户身份登录 AWS 委托账号控制台

  2. 依次点击角色 > 创建角色

  3. 对于可信实体类型,点击 Web 身份

  4. 对于 Identity Provider(身份提供方),点击 Google

  5. 对于受众群体,请输入您在配置 Security Command Center 时复制的服务代理 ID。 点击下一步

  6. 如需向委托角色授予对收集器角色的访问权限,请将权限政策附加到该角色。搜索在为委托角色创建 AWS IAM 政策中创建的委托政策,然后将其选中。

  7. 角色详情部分中,输入您在配置 Security Command Center 时复制的委托角色名称(默认名称为 aws-delegated-role)。

  8. 点击 Create role

创建用于收集资产配置数据的 AWS IAM 政策

如需创建用于收集资产配置数据的 AWS IAM 政策(收集器政策),请完成以下操作:

  1. 登录 AWS 收集器账号控制台

  2. 依次点击政策 > 创建政策

  3. 点击 JSON 并粘贴以下内容:

    {
      "Version": "2012-10-17",
      "Statement": [
          {
              "Effect": "Allow",
              "Action": [
                  "ce:GetCostAndUsage",
                  "dynamodb:DescribeTableReplicaAutoScaling",
                  "identitystore:ListGroupMemberships",
                  "identitystore:ListGroups",
                  "identitystore:ListUsers",
                  "lambda:GetFunction",
                  "lambda:GetFunctionConcurrency",
                  "logs:ListTagsForResource",
                  "s3express:GetBucketPolicy",
                  "s3express:ListAllMyDirectoryBuckets",
                  "wafv2:GetIPSet"
              ],
              "Resource": [
                  "*"
              ]
          },
          {
              "Effect": "Allow",
              "Action": [
                  "apigateway:GET"
              ],
              "Resource": [
                  "arn:aws:apigateway:*::/usageplans",
                  "arn:aws:apigateway:*::/usageplans/*/keys",
                  "arn:aws:apigateway:*::/vpclinks/*"
              ]
          }
      ]
    
    }
    
  4. 点击下一步

  5. 政策详情部分中,输入政策的名称和说明。

  6. 点击创建政策

  7. 针对每个收款人账号重复上述步骤。

在每个账号中创建用于收集资产配置数据的 AWS IAM 角色

创建收集器角色,以便 Security Command Center 从 AWS 获取资产配置数据。此角色使用在为收集资产配置数据创建 AWS IAM 政策中创建的收集器政策。

  1. 以能够为收集器账号创建 IAM 角色的用户身份登录 AWS 收集器账号控制台

  2. 依次点击角色 > 创建角色

  3. 对于可信实体类型,点击自定义信任政策

  4. 自定义信任政策部分中,粘贴以下内容:

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Principal": {
            "AWS": "arn:aws:iam::DELEGATE_ACCOUNT_ID:role/DELEGATE_ACCOUNT_ROLE"
          },
          "Action": "sts:AssumeRole"
        }
      ]
    }
    

    替换以下内容:

  5. 如需授予此收集器角色对 AWS 资产配置数据的访问权限,请将权限政策附加到该角色。搜索在为资产配置数据收集创建 AWS IAM 政策中创建的自定义收集器政策,然后将其选中。

  6. 搜索并选择以下受管理的政策:

    • arn:aws:iam::aws:policy/job-function/ViewOnlyAccess
    • arn:aws:iam::aws:policy/SecurityAudit
  7. 角色详情部分中,输入您在配置 Security Command Center 时复制的配置数据收集器角色的名称。

  8. 点击 Create role

  9. 针对每个收款人账号重复上述步骤。

如果您在配置 Security Command Center 中选中了授予 Sensitive Data Protection 发现权限复选框,请继续执行下一部分。

如果您未勾选为 Sensitive Data Protection 发现服务授予权限复选框,请完成集成流程

为 Sensitive Data Protection 创建 AWS IAM 政策

如果您在配置 Security Command Center 中选中了授予敏感数据保护发现权限复选框,请完成以下步骤。

如需为 Sensitive Data Protection(收集器政策)创建 AWS IAM 政策,请完成以下操作:

  1. 登录 AWS 收集器账号控制台

  2. 依次点击政策 > 创建政策

  3. 点击 JSON 并粘贴以下内容:

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": [
            "s3:GetBucketLocation",
            "s3:ListAllMyBuckets",
            "s3:GetBucketPolicyStatus",
            "s3:ListBucket",
            "s3:GetObject",
            "s3:GetObjectVersion",
            "s3:GetBucketPublicAccessBlock",
            "s3:GetBucketOwnershipControls",
            "s3:GetBucketTagging"
          ],
          "Resource": ["arn:aws:s3:::*"]
        },
        {
          "Effect": "Allow",
          "Action": [
            "iam:ListAttachedRolePolicies",
            "iam:GetPolicy",
            "iam:GetPolicyVersion",
            "iam:ListRolePolicies",
            "iam:GetRolePolicy",
            "ce:GetCostAndUsage",
            "dynamodb:DescribeTableReplicaAutoScaling",
            "identitystore:ListGroupMemberships",
            "identitystore:ListGroups",
            "identitystore:ListUsers",
            "lambda:GetFunction",
            "lambda:GetFunctionConcurrency",
            "logs:ListTagsForResource",
            "s3express:GetBucketPolicy",
            "s3express:ListAllMyDirectoryBuckets",
            "wafv2:GetIPSet"
          ],
          "Resource": ["*"]
        },
        {
          "Effect": "Allow",
          "Action": [
              "s3express:CreateSession"
          ],
          "Resource": ["arn:aws:s3express:*:*:bucket/*"]
        }
      ]
    }
    
  4. 点击下一步

  5. 政策详情部分中,输入政策的名称和说明。

  6. 点击创建政策

  7. 针对每个收款人账号重复上述步骤。

在每个账号中为 Sensitive Data Protection 创建 AWS IAM 角色

如果您在配置 Security Command Center 中选中了授予敏感数据保护发现权限复选框,请完成以下步骤。

创建收集器角色,以便 Sensitive Data Protection 分析 AWS 资源的内容。此角色使用在为 Sensitive Data Protection 创建 AWS IAM 政策中创建的收集器政策。

  1. 以能够为收集器账号创建 IAM 角色的用户身份登录 AWS 收集器账号控制台

  2. 依次点击角色 > 创建角色

  3. 对于可信实体类型,点击自定义信任政策

  4. 自定义信任政策部分中,粘贴以下内容:

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Principal": {
            "AWS": "arn:aws:iam::DELEGATE_ACCOUNT_ID:role/DELEGATE_ACCOUNT_ROLE"
          },
          "Action": "sts:AssumeRole"
        }
      ]
    }
    

    替换以下内容:

  5. 如需向此收集器角色授予对 AWS 资源内容的访问权限,请将权限政策附加到该角色。搜索在为 Sensitive Data Protection 创建 AWS IAM 政策中创建的自定义收集器政策,并将其选中。

  6. 角色详情部分中,输入您在配置 Security Command Center 时复制的 Sensitive Data Protection 角色的名称。

  7. 点击 Create role

  8. 针对每个收款人账号重复上述步骤。

如需完成集成流程,请参阅完成集成流程

完成集成流程

  1. 在 Google Cloud 控制台的测试连接器页面上,点击测试连接器,验证 Security Command Center 是否可以连接到您的 AWS 环境。如果连接成功,则测试确定委托角色具有担任收集器角色所需的所有权限。如果连接失败,请参阅测试连接时排查错误

  2. 点击创建

连接器将开始扫描并收集您指定的 AWS 账号和位置中的数据。调查结果最长可能需要 24 小时才会显示。

自定义 AWS 连接器配置

本部分介绍了一些可用于自定义 Security Command Center 与 AWS 之间连接的方法。您可以在 Google Cloud 控制台中的添加 Amazon Web Services 连接器页面的高级选项(可选)部分找到这些选项。

默认情况下,Security Command Center 会自动发现您在所有 AWS 区域中的 AWS 账号。该连接使用 AWS Security Token Service 的默认全局端点以及您要监控的 AWS 服务的默认每秒查询次数 (QPS)。借助这些高级选项,您可以自定义默认值。

选项 说明
添加 AWS 连接器账号

根据您的偏好选择相应选项:

  • 自动添加账号(推荐):选择此选项可让 Security Command Center 自动发现 AWS 账号。
  • 逐个添加账号:选择此选项可自行手动添加 AWS 账号。
排除 AWS 连接器账号 如果您在添加 AWS 连接器账号部分下选择了自动添加账号,请提供一份 AWS 账号列表,Security Command Center 不应使用这些账号来查找资源。
输入 AWS 连接器账号 如果您在添加 AWS 连接器账号部分下选择了单独添加账号,请提供一份 AWS 账号列表,供 Security Command Center 用于查找资源。
选择要收集数据的区域 选择一个或多个 AWS 区域,以便 Security Command Center 从中收集数据。将 AWS 区域字段留空,以从所有区域收集数据。
AWS 服务的每秒查询次数 (QPS) 上限 您可以更改 QPS 来控制 Security Command Center 的配额限制。将替换值设置为小于相应服务的默认值且大于或等于 1 的值。 默认值为最大值。如果您确实更改了 QPS,Security Command Center 在提取数据时可能会遇到问题。因此,我们不建议更改此值。
AWS Security Token Service 的端点 您可以为 AWS Security Token Service 指定特定端点(例如 https://sts.us-east-2.amazonaws.com)。将 AWS Security Token Service 字段留空即可使用默认的全局端点 (https://sts.amazonaws.com)。

向现有 AWS 连接器授予敏感数据发现权限

如需对 AWS 内容执行敏感数据发现,您需要一个具有所需 AWS IAM 权限的 AWS 连接器。

本部分介绍了如何向现有 AWS 连接器授予这些权限。您需要采取的步骤取决于您是使用 CloudFormation 模板还是手动配置 AWS 环境

使用 CloudFormation 模板更新现有连接器

如果您使用 CloudFormation 模板设置 AWS 环境,请按以下步骤操作,为现有 AWS 连接器授予敏感数据发现权限。

  1. 在 Google Cloud 控制台中,依次前往设置 > SCC 设置

    前往“设置”

  2. 选择您已在其中激活 Security Command Center Enterprise 的组织。

  3. 选择连接器。系统会打开配置连接器页面。

  4. 对于 AWS 连接器,请依次点击 更多选项 > 修改

  5. 查看数据类型部分中,选择授予 Sensitive Data Protection 发现权限

  6. 点击继续。系统会打开连接到 AWS 页面。

  7. 点击下载委派角色模板。模板将下载到您的计算机。

  8. 点击下载收集器角色模板。模板将下载到您的计算机。

  9. 点击继续。系统会打开测试连接器页面。暂时不要测试连接器。

  10. 在 CloudFormation 控制台中,更新委托角色的堆栈模板:

    1. 登录 AWS 委托账号控制台。确保您已登录用于代为使用其他收集器 AWS 账号的委托账号。
    2. 前往 AWS CloudFormation 控制台。
    3. 将委派角色的堆栈模板替换为您下载的更新后的委派角色模板。

      如需了解详情,请参阅 AWS 文档中的更新堆栈的模板(控制台)

  11. 更新收集器角色的堆栈集:

    1. 使用 AWS 管理账号或注册为委托管理员的任何成员账号,前往 AWS CloudFormation 控制台。
    2. 将收集器角色的堆栈集模板替换为您下载的更新后的收集器角色模板。

      如需了解详情,请参阅 AWS 文档中的使用 AWS CloudFormation 控制台更新堆栈集

  12. 如果您需要从管理账号中收集数据,请登录管理账号,然后将收集器堆栈中的模板替换为您下载的更新后的收集器角色模板。

    之所以需要执行此步骤,是因为 AWS CloudFormation 堆栈集不会在管理账号中创建堆栈实例。如需了解详情,请参阅 AWS 文档中的 DeploymentTargets

  13. 在 Google Cloud 控制台的测试连接器页面上,点击测试连接器。如果连接成功,则表示测试已确定委托角色具有担任收集器角色所需的所有权限。如果连接失败,请参阅排查测试连接时出现的错误

  14. 点击保存

手动更新现有连接器

如果您在创建 AWS 连接器时手动配置了 AWS 账号,请按以下步骤操作,为现有 AWS 连接器授予敏感数据发现权限。

  1. 打开设置页面上的连接器标签页。

    前往“连接器”

  2. 选择您已在其中激活 Security Command Center Enterprise 的组织。

  3. 对于 AWS 连接器,请依次点击 更多选项 > 修改

  4. 查看数据类型部分中,选择授予 Sensitive Data Protection 发现权限

  5. 点击继续。系统会打开连接到 AWS 页面。

  6. 点击手动配置 AWS 账号(如果您使用高级设置或自定义角色名称,建议使用)

  7. 复制以下字段的值:

    • 委派角色名称
    • 收集器角色名称
    • Sensitive Data Protection 收集器角色名称
  8. 点击继续。系统会打开测试连接器页面。暂时不要测试连接器。

  9. AWS 委托账号控制台中,更新委托角色的 AWS IAM 政策,以使用以下 JSON:

        {
          "Version": "2012-10-17",
          "Statement": [
            {
              "Action": "sts:AssumeRole",
              "Resource": [
                "arn:aws:iam::*:role/COLLECTOR_ROLE_NAME",
                "arn:aws:iam::*:role/SCAN_SENSITIVE_DATA_COLLECTOR_ROLE_NAME"
              ],
              "Effect": "Allow"
            },
            {
              "Action": [
                "organizations:List*",
                "organizations:Describe*"
              ],
              "Resource": "*",
              "Effect": "Allow"
            }
          ]
        }
        

    替换以下内容:

    • COLLECTOR_ROLE_NAME:您复制的配置数据收集器角色的名称(默认值为 aws-collector-role
    • SCAN_SENSITIVE_DATA_COLLECTOR_ROLE_NAME:您复制的 Sensitive Data Protection 收集器角色的名称(默认值为 aws-sensitive-data-protection-role

    如需了解详情,请参阅 AWS 文档中的修改客户管理的政策(控制台)

  10. 对于每个收款人账号,请执行以下程序:

    1. 为敏感数据保护创建 AWS IAM 政策

    2. 在每个账号中为 Sensitive Data Protection 创建 AWS IAM 角色

  11. 在 Google Cloud 控制台的测试连接器页面上,点击测试连接器。如果连接成功,则表示测试已确定委托角色具有担任收集器角色所需的所有权限。如果连接失败,请参阅排查测试连接时出现的错误

  12. 点击保存

问题排查

本部分包含将 Security Command Center 与 AWS 集成时可能会遇到的一些常见问题。

资源已存在

当您尝试创建 AWS IAM 政策和 AWS IAM 角色,但该角色已存在于您的 AWS 账号中时,AWS 环境中会发生此错误。

如需解决此错误,请完成以下步骤:

  • 检查您要创建的角色或政策是否已存在,以及是否满足本指南中列出的要求。
  • 如有必要,请更改角色名称,以避免冲突。

政策中的正文无效

在 AWS 环境中创建收集器角色时,如果委托角色尚不存在,则可能会出现此错误。

如需解决此错误,请完成为委托角色创建 AWS IAM 政策中的步骤,并等待委托角色创建完成后再继续。

AWS 中的限制

AWS 会按账号或按区域限制每个 AWS 账号的 API 请求。为确保 Security Command Center 从 AWS 收集资产配置数据时不会超出这些限制,Security Command Center 会以固定的最大 QPS 为每个 AWS 服务收集数据,如 AWS 服务的 API 文档中所述。

如果您因消耗的 QPS 而在 AWS 环境中遇到请求限制,可以通过完成以下操作来缓解此问题:

  • AWS 连接器设置页面中,为遇到请求限制的 AWS 服务设置自定义 QPS。

  • 限制 AWS 收集器角色的权限,以便不再收集来自该特定服务的数据。此缓解技术会阻止攻击路径模拟在 AWS 中正常运行。

撤消 AWS 中的所有权限会立即停止数据收集器进程。删除 AWS 连接器不会立即停止数据收集器进程,但该进程在完成后不会再次启动。

针对已删除的 AWS 资源返回了发现结果

删除 AWS 资源后,最长可能需要 40 小时才能从 Security Command Center 资产清单系统中移除该资源。如果您选择通过删除资源来解决发现结果,则可能会在此时间段内看到系统报告该发现结果,因为相应资源尚未从 Security Command Center 资源清单系统中移除。

排查测试连接时出现的错误

在测试 Security Command Center 与 AWS 之间的连接时,可能会出现这些错误。

AWS_FAILED_TO_ASSUME_DELEGATED_ROLE

连接无效,因为 Google Cloud 服务代理无法承担委派的角色。

如需解决此问题,请考虑以下事项:

AWS_FAILED_TO_LIST_ACCOUNTS

连接无效,因为自动发现已启用,而委派角色无法获取组织中的所有 AWS 账号。

此错误表示某些资源缺少允许对委托角色执行 organizations:ListAccounts 操作的政策。如需解决此错误,请验证缺少哪些资源。如需验证委托政策的设置,请参阅为委托角色创建 AWS IAM 政策

检查您是否已按照创建 AWS 账号部分中的说明创建并配置了 AWS 账号。

AWS_ACTIVE_COLLECTOR_ACCOUNTS_NOT_FOUND

连接无效,因为未找到任何状态为 ACTIVE 的 AWS 收集器账号。

如果您在添加 AWS 连接器账号字段中选择了自动添加账号,则表示未找到状态为 ACTIVE 的 AWS 账号(排除 AWS 连接器账号字段中指定的账号除外)。

如果您选择了单独添加账号,请在添加 AWS 连接器账号字段中,检查您提供的账号是否具有 ACTIVE 状态。

AWS_INVALID_COLLECTOR_ACCOUNTS

连接无效,因为存在无效的 Collector 账号。该错误消息包含有关可能原因的更多信息,包括以下原因:

AWS_FAILED_TO_ASSUME_COLLECTOR_ROLE

收集器账号无效,因为委派的角色无法承担收集器账号中的收集器角色。

如需解决此错误,请考虑以下事项:

AWS_COLLECTOR_ROLE_POLICY_MISSING_REQUIRED_PERMISSION

连接无效,因为收集器政策缺少一些必需的权限设置。

如需解决此错误,请考虑以下原因:

后续步骤