将 Google 表单与 Google SecOps 集成
本文档介绍了如何将 Google 表单与 Google Security Operations (Google SecOps) 集成。
集成版本:1.0
准备工作
在 Google SecOps 中配置 Google 表单集成之前,请完成以下前提步骤:
创建服务账号
如需创建服务账号,请完成以下步骤:
在 Google Cloud 控制台中,前往凭证页面。
依次选择add_2创建凭据 > 服务账号。
在服务账号详情下,在服务账号名称字段中输入一个名称。
可选:修改服务账号 ID。
点击完成。
创建 JSON 密钥
如需创建 JSON 密钥,请完成以下步骤:
- 选择您的服务账号,然后前往密钥。
- 依次点击添加密钥 > 创建新密钥。
- 对于密钥类型,选择 JSON,然后点击创建。此时会显示一个对话框,提示私钥已保存到您的计算机,然后系统会将该私钥的副本下载到您的计算机。
为项目启用所需的 API
在 Google Cloud 控制台中,前往 API 和服务。
点击启用 API 和服务。
为您的项目启用以下 API:
- Admin SDK API
- Google Forms API
为集成创建自定义角色
- 在 Google 管理控制台中,依次点击账号 > 管理员角色。
- 点击创建新角色。
- 为新的自定义角色提供名称,然后点击继续。
- 在选择权限页面上,前往 Admin API 权限部分。
在 Admin API 权限下,选择以下权限:
- 组织部门
- 用户
- 群组
点击继续。
如需创建新的自定义角色,请点击创建角色。
将自定义角色分配给用户
- 如需创建新用户,请前往目录 > 用户页面。
- 添加与服务账号关联的新用户。
- 打开新创建的用户的设置。系统会打开用户账号标签页。
- 点击管理员角色和权限。
- 依次点击修改 修改。
- 选择您创建的自定义角色。
- 对于所选角色,将切换开关切换为已分配。
向您的服务账号进行全网域授权
- 在网域的 Google 管理控制台中,依次前往> 安全性 > 访问权限和数据控件 > API 控件。 主菜单
- 在全网域授权窗格中,选择管理全网域授权。
- 点击新增。
- 在客户端 ID 字段中,输入在前述服务账号创建步骤中获得的客户端 ID。
在 OAuth 范围字段中,输入以下以英文逗号分隔的列表,其中包含您的应用所需的范围:
https://mail.google.com/, https://www.googleapis.com/auth/admin.directory.customer.readonly, https://www.googleapis.com/auth/admin.directory.domain.readonly, https://www.googleapis.com/auth/admin.directory.group, https://www.googleapis.com/auth/admin.directory.group.member, https://www.googleapis.com/auth/admin.directory.orgunit, https://www.googleapis.com/auth/admin.directory.rolemanagement.readonly, https://www.googleapis.com/auth/admin.directory.user, https://www.googleapis.com/auth/admin.directory.user.alias, https://www.googleapis.com/auth/apps.groups.settings, https://www.googleapis.com/auth/cloud-platform, https://www.googleapis.com/auth/forms.body.readonly, https://www.googleapis.com/auth/forms.responses.readonly
点击授权。
集成参数
Google 表单集成需要以下参数:
参数 | 说明 |
---|---|
Delegated Email |
必需 用于模拟和访问权限控制的电子邮件地址。 |
Service Account JSON |
必需 服务账号密钥 JSON 文件的内容。 |
Verify SSL |
必需 如果选择此项,集成会验证用于连接到 Google 表单的 SSL 证书是否有效。 此选项将会默认选中。 |
如需了解如何在 Google SecOps 中配置集成,请参阅配置集成。
如果需要,您可以在稍后阶段进行更改。配置集成实例后,您可以在剧本中使用该实例。如需详细了解如何配置和支持多个实例,请参阅支持多个实例。
操作
如需详细了解操作,请参阅处理工作台中的待处理操作和执行手动操作。
Ping
使用 Ping 操作测试与 Google 表单的连接。
此操作不适用于 Google SecOps 实体。
操作输入
无。
操作输出
Ping 操作提供以下输出:
操作输出类型 | 可用性 |
---|---|
案例墙附件 | 不可用 |
案例墙链接 | 不可用 |
“支持请求墙”表格 | 不可用 |
丰富化表 | 不可用 |
JSON 结果 | 不可用 |
输出消息 | 可用 |
脚本结果 | 可用 |
输出消息
Ping 操作可以返回以下输出消息:
输出消息 | 消息说明 |
---|---|
Successfully connected to the Google Forms server with the
provided connection parameters! |
操作成功。 |
Failed to connect to the Google Forms server! Error is
ERROR_REASON |
操作失败。 检查与服务器的连接、输入参数或凭据。 |
脚本结果
下表列出了使用 Ping 操作时脚本结果输出的值:
脚本结果名称 | 值 |
---|---|
is_success |
True 或 False |
连接器
如需详细了解如何在 Google SecOps 中配置连接器,请参阅提取数据(连接器)。
Google 表单 - 回答连接器
使用 Google 表单 - 回答连接器从 Google 表单中提取回答。
Google 表单 - 回答连接器需要以下参数:
参数 | 说明 |
---|---|
Product Field Name |
必需 存储商品名称的字段的名称。 默认值为 |
Event Field Name |
必需 用于确定事件名称(子类型)的字段名称。 默认值为 |
Environment Field Name |
可选
存储环境名称的字段的名称。 如果找不到环境字段,则将环境设置为默认环境。 默认值为 |
Environment Regex Pattern |
可选
要对 使用默认值 如果正则表达式模式为 null 或空,或者环境值为 null,则最终环境结果为默认环境。 |
Script Timeout (Seconds) |
必需 运行当前脚本的 Python 进程的超时时间限制(以秒为单位)。 默认值为 300 秒。 |
Delegated Email |
必需 用于模拟和访问权限控制的电子邮件地址。 |
Service Account JSON |
必需 服务账号密钥 JSON 文件的内容。 |
Form IDs To Track |
必需 以英文逗号分隔的 Google 表单 ID 列表,用于跟踪回答。 如需检索表单的唯一 ID,请在表单编辑器(而非公开回复链接)中打开表单,然后复制浏览器栏中显示完整地址时位于 |
Alert Severity |
可选 要分配给连接器基于提取的 Google 表单回复创建的所有提醒的严重程度。 可能的值如下:
默认值为 |
Max Hours Backwards |
必需 首次连接器迭代之前的小时数,用于检索响应。此参数适用于首次启用连接器后的初始连接器迭代,或适用于已过期的连接器时间戳的回退值。 默认值为 1 小时。 |
Max Responses To Fetch |
必需 每次连接器迭代要处理的响应数量上限。 上限为 100。 |
Disable Overflow |
可选 如果选中此选项,连接器会在创建提醒期间忽略 Google SecOps 溢出机制。 默认情况下未选中。 |
Verify SSL |
必需 如果选择此选项,集成会验证用于连接到 Google 表单的 SSL 证书是否有效。 默认情况下未选中。 |
Proxy Server Address |
可选 要使用的代理服务器的地址。 |
Proxy Username |
可选 用于进行身份验证的代理用户名。 |
Proxy Password |
可选 用于进行身份验证的代理密码。 |
连接器规则
Google 表单 - 回答连接器支持代理。
连接器事件
以下示例展示了 Google 表单 - 回答连接器生成的 Google SecOps 事件的 JSON 输出:
{
"responseId": "RESPONSE_ID",
"createTime": "2024-09-05T11:43:13.892Z",
"lastSubmittedTime": "2024-09-05T11:43:13.892123Z",
"event_type": "Question",
"questionId": "78099fe3",
"textAnswers": {
"answers": [
{
"value": "Option 1"
}
]
}
}
需要更多帮助?从社区成员和 Google SecOps 专业人士那里获得解答。