将 SOAR 权限迁移到 Google Cloud IAM
本文档面向 Google Security Operations 统一客户和 SOAR 独立用户,他们需要将环境从现有的 SOAR 权限组迁移到 Google Cloud Identity and Access Management (IAM) 以进行访问权限控制。如需观看此过程的视频演示,请参阅 SOAR IAM 迁移视频
注意:迁移工具可以帮助您为现有的 SOAR 设置权限提出新的自定义 IAM 绑定建议。
Google Cloud 控制台验证流程通过执行以下关键步骤,自动完成从 SOAR 权限到Google Cloud IAM 的过渡:
- 读取现有权限配置,包括自定义权限组和用户分配。
- 生成可复制现有权限组的自定义 IAM 角色。
- 将现有用户和群组映射到新创建的 IAM 角色,以确保保留所有访问权限。
- 创建 IAM 政策,以将用户和群组绑定到其分配的角色。
准备工作
在开始迁移之前,请确认满足以下要求:
- IdP 群组映射:验证所有用户是否都已映射到 Google SecOps 平台中的身份提供商 (IdP) 群组。 如需了解 IdP 群组映射,请参阅在平台中映射用户。 迁移工具会使用这些映射来创建将用户电子邮件地址或群组绑定到 IAM 主账号的脚本。
电子邮件群组映射:如果您使用的是 Cloud Identity,请验证所有用户是否都已映射到 Google SecOps 平台中的电子邮件群组。如需了解电子邮件地址映射,请参阅使用 Cloud Identity 在平台中映射用户
权限:确认您拥有必要的权限:
用户需要使用自己的用户凭据登录平台,并检查是否可以在 SOAR 设置中看到群组映射页面。您可以通过以下两种方式迁移 SOAR 权限:
使用 Google Cloud CLI 迁移 SOAR 权限
如需将 SOAR 权限迁移到 Google Cloud IAM,请按以下步骤操作:
- 在 Google Cloud 控制台中,前往 Google SecOps 管理设置。
- 点击 SOAR IAM 迁移标签页。

- 在迁移角色绑定部分中,复制 Google Cloud CLI 命令。
- 在 Google Cloud 工具栏上,点击激活 Cloud Shell。
- 在终端窗口中,粘贴 Google Cloud CLI 命令,然后按 Enter 键。

- 确保脚本已成功执行。
- 返回 Google Cloud 控制台,然后在完成此任务部分中,点击启用 IAM。

使用 Terraform 迁移 SOAR 权限
如需使用 Terraform 将 SOAR 权限迁移到 Google Cloud IAM,请按以下步骤操作:
- 在 Google Cloud 控制台中,前往 Google SecOps 管理设置。
- 点击 SOAR IAM 迁移标签页。

- 在迁移角色绑定部分中,复制 Google Cloud CLI 命令。
- 前往您的 Terraform 代码库,并将 Google Cloud CLI 命令映射到相应的 Terraform 等效命令。下表将 Google Cloud CLI 创建自定义角色命令与 Terraform 命令进行了对照。
| gcloud 标志 | Terraform 实参 | 备注 |
|---|---|---|
ROLE_ID(位置) |
role_id |
在 Terraform 中,请勿添加 projects/PROJECT_ID/roles/ 前缀。仅使用 ID 字符串(例如 myCustomRole)。 |
--project |
project |
定义自定义角色的项目的 ID。 |
--title |
title |
角色的直观易懂的标题。 |
--description |
description |
角色用途和权限的摘要。 |
--permissions |
permissions |
gcloud 接受以英文逗号分隔的字符串。Terraform 需要一个字符串列表:["perm.a", "perm.b"]。 |
--stage |
stage |
有效值:ALPHA、BETA、GA、DEPRECATED、DISABLED、EAP。 |
Google Cloud CLI 到 Terraform 的映射示例
Google Cloud CLI 命令:
gcloud iam roles create SOAR_Custom_managedUser_google.com --project="{customer project}"
--title="SOAR Custom managedUser Role"
--description="SOAR Custom role generated for IDP Mapping Group ManagedUser"
--stage=GA
--permissions=chronicle.cases.get
Terraform 命令:
resource "google_project_iam_custom_role" "{terraform_name}" {
role_id = "SOAR_Custom_managedUser_google.com"
title = "SOAR Custom managedUser Role"
project = "{customer project}"
stage = "GA"
permissions = [
#This is an example!
"chronicle.cases.get"
]
}
IAM 政策绑定(分配角色)
使用 Google Cloud CLI projects add-iam-policy-binding 时,您可以向特定成员(用户、服务账号或群组)授予特定角色。下表将 Google Cloud CLI 命令与 Terraform 命令进行了对应。按顺序映射命令以分配 IAM 角色。
| gcloud 标志 | Terraform 实参 | 备注 |
|---|---|---|
PROJECT_ID(位置) |
project |
目标项目的 ID。 |
--member |
member |
主账号身份(例如 user:email、serviceAccount:email、group:email)。 |
--role |
role |
角色 ID。自定义角色使用完整路径 (projects/ID/roles/NAME),标准角色使用简称 (roles/NAME)。 |
分配角色示例
Google Cloud CLI 命令:
gcloud projects add-iam-policy-binding
{customer project}
--member="user:alice@example.com"
--role="projects/{customer project}/roles/SOAR_Custom_managedUser_google.com"
Terraform 命令:
resource "google_project_iam_member" "{terraform_name}" {
project = "{customer project}"
role = "projects/{customer project}/roles/SOAR_Custom_managedUser_google.com"
member = "user:alice@example.com"
}