开始使用 GCP 的 CSPM
编辑开始使用 GCP 的 CSPM
编辑概述
编辑本页介绍如何开始使用云安全态势管理 (CSPM) 功能来监控 GCP 云资产的安全态势。
设置 GCP 的 CSPM
编辑您可以通过注册单个项目,或注册包含多个项目的组织来设置 GCP 的 CSPM。无论哪种方式,您都需要先添加 CSPM 集成,然后启用云帐户访问。有两种部署技术可用:无代理和基于代理。无代理部署允许您收集云态势数据,而无需管理云中代理的部署。基于代理的部署要求您在要监控的云帐户中部署和管理代理。
无代理部署
编辑此功能处于测试阶段,可能会发生变化。其设计和代码不如正式 GA 功能成熟,并且按原样提供,不提供任何保证。测试功能不受正式 GA 功能的支持 SLA 的约束。
- 在导航菜单中找到集成,或使用全局搜索字段。
- 搜索
CSPM
,然后单击结果。 - 单击添加云安全态势管理 (CSPM)。
- 选择GCP,然后选择GCP 组织以加入您的整个组织,或选择单个帐户以加入单个帐户。
- 为您的集成命名,以匹配您要监控的 GCP 订阅/组织的目的或团队,例如
dev-gcp-account
。 - 单击高级选项,然后选择无代理 (BETA)。
- 接下来,您需要验证到 GCP 的身份。展开生成 GCP 帐户凭据的步骤部分,然后按照出现的说明使用 Google Cloud Shell 自动创建必要的凭据。
- 提供必要的凭据后,单击保存并继续以完成部署。您的数据应该会在几分钟内开始出现。
基于代理的部署
编辑添加您的 CSPM 集成
编辑- 在导航菜单中找到集成,或使用全局搜索字段。
- 搜索
CSPM
,然后单击结果。 - 单击添加云安全态势管理 (CSPM)。
- 在配置集成下,选择GCP,然后选择GCP 组织(推荐)或单个帐户。
- 为您的集成命名,以匹配您要监控的 GCP 帐户的目的或团队,例如
dev-gcp-project
。
设置云帐户访问
编辑要为 GCP 项目设置 CSPM,您需要该项目的管理员权限。
对于大多数用户来说,最简单的选择是使用 Google Cloud Shell 脚本来自动在您的 GCP 帐户中预配必要的资源和权限。下面将介绍此方法以及两种手动选项。
Cloud Shell 脚本设置(推荐)
编辑- 在设置访问下,选择Google Cloud Shell。输入您的 GCP 项目 ID,对于 GCP 组织部署,输入您的 GCP 组织 ID。
-
在在何处添加此集成下
- 选择新主机。
- 为 Elastic Agent 策略命名。使用与您要监控的云帐户或帐户的目的或团队相匹配的名称。例如,
dev-gcp-account
。 - 单击保存并继续,然后单击将 Elastic Agent 添加到您的主机。添加代理向导将出现,并提供 Elastic Agent 二进制文件,您可以下载这些文件并将其部署到 GCP 帐户中的 VM。
- 单击保存并继续。
- 复制出现的命令,然后单击启动 Google Cloud Shell。它会在新窗口中打开。
-
选中该复选框以信任 Elastic 的
cloudbeat
存储库,然后单击确认。 - 在 Google Cloud Shell 中,执行您复制的命令。完成后,返回 Kibana 并等待确认收到来自新集成的数据。然后,您可以单击查看资产以查看您的数据。
如果您在运行命令时遇到任何问题,请返回 Kibana 并再次导航到 Google Cloud Shell。
在 Cloud Shell 设置期间,CSPM 集成会将角色添加到 Google 的默认服务帐户,从而实现自定义角色创建和将服务帐户附加到计算实例。设置后,这些角色将从服务帐户中删除。如果您尝试删除部署,但发现部署管理器缺少必要的权限,请考虑将缺少的角色添加到服务帐户:项目 IAM 管理员,角色管理员。
手动身份验证(GCP 组织)
编辑要手动验证身份以监控 GCP 组织,您需要创建一个新的 GCP 服务帐户,为其分配必要的角色,生成凭据,然后将这些凭据提供给 CSPM 集成。
使用以下命令,将 <SA_NAME>
替换为您的新服务帐户的名称,将 <ORG_ID>
替换为您的 GCP 组织的 ID,并将 <PROJECT_ID>
替换为您要在其中预配将运行 CSPM 的计算实例的 GCP 项目的 ID。
创建一个新的服务帐户
gcloud iam service-accounts create <SA_NAME> \ --description="Elastic agent service account for CSPM" \ --display-name="Elastic agent service account for CSPM" \ --project=<PROJECT_ID>
将必要的角色分配给服务帐户
gcloud organizations add-iam-policy-binding <ORG_ID> \ --member=serviceAccount:<SA_NAME>@<PROJECT_ID>.iam.gserviceaccount.com \ --role=roles/cloudasset.viewer gcloud organizations add-iam-policy-binding <ORG_ID> \ --member=serviceAccount:<SA_NAME>@<PROJECT_ID>.iam.gserviceaccount.com \ --role=roles/browser
云资产查看器
角色授予对云资产元数据的读取权限。浏览器
角色授予对项目层次结构的读取权限。
下载凭据 JSON(首先,将 <KEY_FILE>
替换为您要保存它的位置)
gcloud iam service-accounts keys create <KEY_FILE> \ --iam-account=<SA_NAME>@<PROJECT_ID>.iam.gserviceaccount.com
将凭据 JSON 保存在安全位置;您稍后将需要它。
将凭据提供给 CSPM 集成
- 在 CSPM 设置屏幕上的设置访问下,选择手动。
- 输入您的 GCP 组织 ID。输入您要在其中预配将运行 CSPM 的计算实例的 GCP 项目 ID。
- 选择凭据 JSON,然后输入您先前生成的值。
- 在在何处添加此集成下,选择新主机。
- 为 Elastic Agent 策略命名。使用与您要监控的云帐户或帐户的目的或团队相匹配的名称。例如,
dev-gcp-account
。 - 单击保存并继续,然后按照说明在您选择的 GCP 项目中安装 Elastic Agent。
等待确认 Kibana 收到了来自您新集成的数据。然后,您可以单击查看资产以查看您的数据。
手动身份验证(GCP 项目)
编辑要手动验证身份以监控单个 GCP 项目,您需要创建一个新的 GCP 服务帐户,为其分配必要的角色,生成凭据,然后将这些凭据提供给 CSPM 集成。
使用以下命令,将 <SA_NAME>
替换为您的新服务帐户的名称,并将 <PROJECT_ID>
替换为您的 GCP 项目 ID。
创建一个新的服务帐户
gcloud iam service-accounts create <SA_NAME> \ --description="Elastic agent service account for CSPM" \ --display-name="Elastic agent service account for CSPM" \ --project=<PROJECT_ID>
将必要的角色分配给服务帐户
gcloud projects add-iam-policy-binding <PROJECT_ID> \ --member=serviceAccount:<SA_NAME>@<PROJECT_ID>.iam.gserviceaccount.com \ --role=roles/cloudasset.viewer gcloud projects add-iam-policy-binding <PROJECT_ID> \ --member=serviceAccount:<SA_NAME>@<PROJECT_ID>.iam.gserviceaccount.com \ --role=roles/browser
云资产查看器
角色授予对云资产元数据的读取权限。浏览器
角色授予对项目层次结构的读取权限。
下载凭据 JSON(首先,将 <KEY_FILE>
替换为您要保存它的位置)
gcloud iam service-accounts keys create <KEY_FILE> \ --iam-account=<SA_NAME>@<PROJECT_ID>.iam.gserviceaccount.com
将凭据 JSON 保存在安全位置;您稍后将需要它。
将凭据提供给 CSPM 集成
- 在 CSPM 设置屏幕上的设置访问下,选择手动。
- 输入您的 GCP 项目 ID。
- 选择凭据 JSON,然后输入您先前生成的值。
- 在在何处添加此集成下,选择新主机。
- 为 Elastic Agent 策略命名。使用与您要监控的云帐户或帐户的目的或团队相匹配的名称。例如,
dev-gcp-account
。 - 单击保存并继续,然后按照说明在您选择的 GCP 项目中安装 Elastic Agent。
等待确认 Kibana 收到了来自您新集成的数据。然后,您可以单击查看资产以查看您的数据。