迁移前验证指南
本文档概述了一种系统性的分步诊断方法,用于在 SOAR 迁移之前验证 Google Security Operations 实例和身份验证设置。本指南重点介绍用于用户身份验证和授权的 SAML 标准。
Chronicle API 设置验证
如需检查 Chronicle API 是否已在您的 Google Cloud 项目中正确配置,请按以下步骤操作:
- 登录 Google Cloud 控制台,然后从顶部导航栏中的项目列表中选择正确的 Google Cloud 项目。
- 打开导航菜单 (≡),然后依次前往 API 和服务 > 已启用的 API 和服务。
- 前往已启用的 API 和服务列表,找到
Chronicle API。 如果该 API 已列出:则表示该 API 已启用。
如果未列出:点击顶部的 + 启用 API 和服务,搜索
Chronicle API,然后点击启用。
如需验证服务账号是否已创建,请执行以下操作:
- 前往 Google Cloud 控制台中的 IAM 页面。
- 显示隐藏的账号(关键步骤):您必须选中过滤栏右侧的方框,其中显示包括 Google 提供的角色授权。
- 搜索代理:在过滤条件栏中,输入
chronicle。您要查找的电子邮件地址符合以下特定模式:service-[PROJECT_NUMBER]@gcp-sa-chronicle.iam.gserviceaccount.com - 验证权限:确保该服务账号具有 Chronicle Service Agent 角色。如果缺少该角色,请点击修改 修改,然后重新添加。
身份验证工作流架构
了解请求流程对于隔离任何故障点至关重要。下图展示了成功登录的顺序路径。

分步问题排查程序
为了有效地诊断和跟踪 SAML 身份验证过程,您可以使用以下各部分中列出的基于 Web 的实用程序。
虽然 Google 不认可任何特定产品,但以下工具可帮助排查此流程中的问题:
- SAML 验证: https://www.samltool.io/
- 用途:用于解码和验证原始 SAML 请求和响应。
- JWT 检查: https://www.jwt.io/
- 用途:用于检查 JSON Web 令牌 (JWT) 的声明和内容。
第 1 阶段:环境准备
在开始之前,请执行以下操作,确保浏览器环境已准备好捕获网络流量:
- 打开新的空白浏览器标签页。
- 打开开发者工具(按 F12 或 Ctrl + Shift + I [Windows /Linux] 或 Cmd + Option + I [macOS]),然后前往网络标签页。
选中保留日志框,以确保在重定向期间不会丢失任何数据。

前往您的 Google SecOps 环境网址,以启动登录流程。在面向 SOAR 独立客户的迁移阶段 1 的第 5 步中完成 Google SecOps 设置后,您将通过电子邮件收到此网址。 电子邮件的主题为
YourGoogle SecOps instance is ready。
阶段 2:验证发送到 IdP 的 SAML 请求
此步骤用于验证 Google Cloud 发送给身份提供方 (IDP) 的初始消息。
找到请求:在网络标签页的过滤条件栏中,搜索
saml。
提取数据:选择相应请求,然后点击 Payload 标签页。找到标有
SAMLRequest的查询字符串参数。
解码:复制请求值并将其粘贴到 SAML 验证工具 (
samltool.io) 中以进行解码。
验证:
- 检查请求目的地。
- 确认此网址与 IDP 中的配置设置一致。
第 3 阶段:验证来自 IDP 的 SAML 响应
此步骤用于验证 IDP 在身份验证后返回给 Google Cloud 的属性。
找到响应:在网络标签页的过滤条件栏中,搜索
signin-callback。
提取数据:选择相应请求,然后点击 Payload 标签页。找到
SAMLResponse数据。
解码:复制响应值并将其粘贴到 SAML 验证工具中。
验证:
- 查看返回的声明(属性),例如
groups、first name、last name和email。 - 重要提示:请确保这些属性与 Google Cloud中员工池设置中的配置一致。
确认这些值对于尝试登录的特定用户是否正确。

- 查看返回的声明(属性),例如
下图显示了属性映射:

图片中的映射如下:
google.subject = assertion.subjectattribute.last_name = assertion.attributes.last_name[0]attribute.user_email = assertion.attributes.user_email[0]attribute.first_name = assertion.attributes.first_name[0]google.groups = assertion.attributes.groups
左侧部分始终相同,是 Google 语法。右侧是根据 SAML 响应中显示的声明属性键。
[0] 对于所列出的特定属性(last_name、user_email、first_name)至关重要,但与 subject 和 groups 无关。
第 4 阶段:验证 Google SecOps 身份验证
此步骤用于验证 Google Cloud 是否正在对用户进行身份验证,以登录 Google SecOps SOAR。
在用户的浏览器中找到令牌:在网络标签页的过滤条件栏中,搜索端点
auth/siem。
提取数据:选择相应请求,然后查看载荷标签页。找到
jwt字符串。解码:复制 JWT 字符串,然后将其粘贴到 JWT 检查工具 (jwt.io) 中。

验证:
- 比较
given_name、family_name、email和idpgroups的解码后声明。 - 匹配确认:这些值必须与第 3 阶段(SAML 响应)中验证的属性完全一致。
- 如果值匹配,但您仍然没有访问权限,请检查 IAM 中的角色分配。请确保所有用户都分配了某个 Chronicle 预定义角色,并为您的身份设置(员工身份联合或 Cloud Identity [适用于 Google 管理的账号])使用正确的主账号格式。
- 比较
需要更多帮助?获得社区成员和 Google SecOps 专业人士的解答。