将 Snowflake 与 Google SecOps 集成

本文档介绍了如何将 Snowflake 与 Google Security Operations (Google SecOps) 集成。

集成版本:5.0

端点

Snowflake 集成使用以下 Snowflake API 端点:

  • /api/statements?async=false:用于测试与 Snowflake 实例的连接。此端点会执行一个简单的查询来验证连接。

  • /api/statements?async=true:用于向 Snowflake 提交自定义查询和简单查询。async=true 参数支持异步执行,并允许操作检索大型数据集,而不会阻塞 Google SecOps 平台。

  • /api/statements/QUERY_ID:用于检索之前提交的查询的结果。集成会将 QUERY_ID 占位符替换为 /api/statements?async=true 端点返回的唯一标识符。

准备工作

如需使用 Snowflake 集成,请生成私钥并以 base64 格式对其进行编码。

如需生成私钥,请使用 SnowSQL。如需详细了解如何使用 SnowSQL,请参阅安装 SnowSQL

Snowflake 集成依赖于密钥对身份验证。如需详细了解 Snowflake 中的密钥,请参阅使用密钥对身份验证

集成参数

Snowflake 集成需要以下参数:

参数 说明
API Root

必填。

Snowflake 实例的 API 根。

默认值为 https://INSTANCE.snowflakecomputing.com

Account

必填。

Snowflake 账号的名称。

Username

必填。

用于访问 Snowflake 的用户名。

Private Key

必填。

用于身份验证的私钥。

Verify SSL

必填。

如果选择此项,集成会在连接到 Snowflake 时验证 SSL 证书。

此选项将会默认选中。

如需了解如何在 Google SecOps 中配置集成,请参阅配置集成

如有需要,您可以在稍后阶段进行更改。配置集成实例后,您可以在剧本中使用该实例。如需详细了解如何配置和支持多个实例,请参阅支持多个实例

操作

如需详细了解操作,请参阅处理“工作台”中的待处理操作执行手动操作

执行自定义查询

使用 Execute Custom Query 操作在 Snowflake 中执行自定义查询。

此操作是异步的。根据需要,在 Google SecOps 集成开发环境 (IDE) 中调整操作的脚本超时值。

此操作不适用于 Google SecOps 实体。

操作输入

执行自定义查询操作需要以下参数:

参数 说明
Query

必填。

要在 Snowflake 中执行的 SQL 查询。

该操作会自动将 LIMIT 关键字添加到查询中。请勿手动设置 LIMIT 关键字。

查询仅支持单引号。

Database

必填。

要查询的 Snowflake 数据库的名称。

Schema

可选。

要查询的指定数据库中的架构的名称。

Max Results To Return

可选。

每次操作运行时,查询返回的结果数上限。

默认值为 50

操作输出

执行自定义查询操作提供以下输出:

操作输出类型 可用性
案例墙附件 不可用
案例墙链接 不可用
“支持请求墙”表格 不可用
丰富化表 不可用
JSON 结果 可用
输出消息 可用
脚本结果 可用
JSON 结果

以下示例展示了使用执行自定义查询操作时收到的 JSON 结果输出:

{
    "C_CUSTKEY": "CUSTOMER_KEY",
    "C_NAME": "Customer#ID",
    "C_ADDRESS": "9Ii4zQn9cX",
    "C_NATIONKEY": "14",
    "C_PHONE": "800-555-0175"

}
输出消息

执行自定义查询 操作可以返回以下输出消息:

输出消息 消息说明

Successfully executed query "QUERY" in Snowflake.

No results were found for the query "QUERY" in Snowflake.

操作成功。
Error executing action "Execute Custom Query". Reason: ERROR_REASON

操作失败。

检查与服务器的连接、输入参数或凭据。

脚本结果

下表列出了使用执行自定义查询操作时脚本结果输出的值:

脚本结果名称
is_success TrueFalse

执行简单查询

使用 Execute Simple Query 操作执行基于所提供参数的查询。

此操作是异步的。根据需要,在 Google SecOps IDE 中调整操作的脚本超时值。

此操作不适用于 Google SecOps 实体。

操作输入

执行简单查询操作需要以下参数:

参数 说明
Database

必填。

要查询的数据库的名称。

Table

必填。

要查询的表的名称。

Schema

可选。

要查询的架构的名称。

Where Filter

可选。

用于过滤查询结果的 WHERE 子句。

请勿使用 LIMITSORT 关键字。请勿在载荷中设置 WHERE 字符串。

查询仅支持单引号。

Fields To Return

可选。

以英文逗号分隔的要返回的字段列表。

如果您未配置此参数,则操作会返回所有字段。

默认值为 *

Sort Field

可选。

用于对结果进行排序的值。

Sort Order

可选。

排序顺序(升序或降序)。

可能的值如下:

  • ASC
  • DESC

默认值为 ASC

Max Results To Return

可选。

每次操作运行返回的结果数上限。

默认值为 50

操作输出

执行简单查询操作提供以下输出:

操作输出类型 可用性
案例墙附件 不可用
案例墙链接 不可用
“支持请求墙”表格 不可用
丰富化表 不可用
JSON 结果 可用
输出消息 可用
脚本结果 可用
JSON 结果

以下示例展示了使用 执行简单查询操作时收到的 JSON 结果输出:

{
    "C_CUSTKEY": "CUSTOMER_KEY",
    "C_NAME": "Customer#ID",
    "C_ADDRESS": "9Ii4zQn9cX",
    "C_NATIONKEY": "14",
    "C_PHONE": "800-555-0175"

}
输出消息

执行简单查询操作可以返回以下输出消息:

输出消息 消息说明

Successfully executed query "QUERY" in Snowflake.

No results were found for the query "QUERY" in Snowflake.

操作成功。
Error executing action "Execute Simple Query". Reason: ERROR_REASON

操作失败。

检查与服务器的连接、输入参数或凭据。

脚本结果

下表列出了使用执行简单查询操作时脚本结果输出的值:

脚本结果名称
is_success TrueFalse

Ping

使用 Ping 操作测试与 Snowflake 的连接。

此操作不适用于 Google SecOps 实体。

操作输入

无。

操作输出

Ping 操作提供以下输出:

操作输出类型 可用性
案例墙附件 不可用
案例墙链接 不可用
“支持请求墙”表格 不可用
丰富化表 不可用
JSON 结果 不可用
输出消息 可用
脚本结果 可用
输出消息

Ping 操作可以返回以下输出消息:

输出消息 消息说明
Successfully connected to the Snowflake server with the provided connection parameters! 操作成功。
Failed to connect to the Snowflake server! The error is ERROR_REASON

操作失败。

检查与服务器的连接、输入参数或凭据。

脚本结果

下表列出了使用 Ping 操作时脚本结果输出的值:

脚本结果名称
is_success TrueFalse

需要更多帮助?从社区成员和 Google SecOps 专业人士那里获得解答。