使用 Feed 管理界面创建和管理 Feed

支持以下语言:

本页介绍了如何使用 Feed 管理界面创建、管理和排查 Feed 问题。管理 Feed 包括修改、启用和删除 Feed。

准备工作

每个数据 Feed 都有自己的一套前提条件。 在 Google Security Operations 中设置 Feed。有关特定前提条件的信息 添加到 Feed 类型,请参阅按来源类型进行配置。 搜索您需要设置的数据 Feed 类型,然后按照所提供的说明进行操作。

支持的压缩格式

支持的 Feed 提取压缩格式包括:.gz、.tar.gz、.tar、.targz 和 solr.gz。

添加 Feed

如需向您的 Google 安全运营账号添加 Feed,请完成以下步骤。 您最多可以为每种日志类型添加 5 个 Feed。

  1. 在 Google Security Operations 菜单中,选择设置,然后点击 Feed。 此页面上列出的数据 Feed 包括 Google 为您的账号配置的所有 Feed,以及您配置的 Feed。

  2. 点击 Add New(新增)。系统随即会显示添加 Feed 窗口。

  3. 添加 Feed 名称。

  1. 来源类型列表中,选择您打算通过哪种来源类型将数据导入 Google 安全运营。您可以从以下 Feed 来源类型中进行选择:

    • Amazon Data Firehose
    • Amazon S3
    • Amazon SQS
    • Google Cloud Pub/Sub
    • Google Cloud Storage
    • HTTP(S) 文件(非 API)
    • Microsoft Azure Blob Storage
    • 第三方 API
    • Webhook
  2. 日志类型列表中,选择 资源可用的日志取决于您之前选择的来源类型。点击下一步

    如果您选择 Google Cloud Storage 作为来源类型,请使用获取服务账号选项获取唯一的服务账号。有关本文档,请参阅 Google Cloud Storage Feed 设置示例

  3. 输入参数标签页中指定所需的参数。此处显示的选项因在设置属性标签页上选择的来源和日志类型而异。 将鼠标指针悬停在每个字段对应的问号图标上,即可详细了解您需要提供的信息。

  4. (可选)您可以在此处指定一个命名空间。如需详细了解命名空间,请参阅素材资源命名空间文档

  5. 点击下一步

  6. 最终确定标签页中查看新的 Feed 配置。准备就绪后,点击提交。Google Security Operations 会对新 Feed 完成验证检查。如果 Feed 通过检查,系统会为该 Feed 生成一个名称,并将其提交给 Google Security Operations,然后 Google Security Operations 会开始尝试提取数据。

    最终确定 Feed 请求

删除源文件

对于多种 Feed 类型(包括 Cloud Storage),添加新 Feed修改 Feed 工作流程中都有一个名为来源删除选项的字段。此菜单包含以下三个选项:

  1. 永不删除文件
  2. 删除转移的文件和空目录
  3. 删除传输的文件

选项 2 和 3 涉及删除:一个用于文件,一个用于文件,以及任何空 目录。如果您选择这两个选项中的任意一个,则需要向 特定 Feed 类型。如需了解特定于 Feed 类型的权限,请参阅按来源类型进行配置

通过此选项,您可以在转移对象后将其从存储系统中删除。Feed 始终会记住自己转移过哪些对象(或文件),并且绝不会转移同一文件两次(除非该文件已更新),但如果您希望系统在源对象成功转移后将其删除,则必须设置此选项。

Microsoft Azure Blob Storage 不支持删除源文件。以下来源删除选项不得与 Microsoft Azure Blob Storage 来源类型搭配使用:

  • 删除转移的文件和空目录
  • 删除传输的文件

使用 Microsoft Azure Blob Storage 作为来源创建 Feed 时,请仅选择永不删除文件选项。

设置 Pub/Sub 推送 Feed

如需设置 Pub/Sub 推送 Feed,请执行以下操作:

  1. 创建 Pub/Sub 推送 Feed。
  2. 在 Pub/Sub 订阅中指定端点网址。

创建 Pub/Sub 推送 Feed

  1. 在 Google Security Operations 菜单中,选择设置,然后点击 Feed
  2. 点击新增
  3. Feed 名称字段中,输入 Feed 的名称。
  4. 来源类型列表中,选择 Google Cloud Pub/Sub 推送
  5. 选择日志类型。例如,如需为开放式网络安全架构 (OCSF) 创建 Feed,请选择 Open Cybersecurity Schema Framework (OCSF) 作为日志类型
  6. 点击下一步
  7. 可选:为以下输入参数指定值:
    • 分隔符:用于分隔日志行(例如 \n)的分隔符。
    • 资产命名空间资产命名空间
    • 提取标签:要应用于此 Feed 中的事件的标签。
  8. 点击下一步
  9. 敲定屏幕中检查新 Feed 配置,然后点击提交
  10. 详情标签页中,从端点信息字段复制 Feed 端点网址。您需要此端点网址才能在 Pub/Sub 中创建推送订阅。
  11. 如需停用 Feed,请点击 Feed Enabled 切换开关。该 Feed 默认处于启用状态。
  12. 点击完成

指定端点网址

创建 Pub/Sub 推送 Feed 后 创建推送订阅,指定 HTTPS 端点,并启用身份验证。

  1. 在 Pub/Sub 中创建推送订阅。如需详细了解如何创建推送订阅,请参阅创建推送订阅
  2. 指定端点网址,该网址可在 Google Cloud Pub/Sub 推送 Feed 中找到。
  3. 选择启用身份验证,然后选择一个服务账号。

设置 Amazon Data Firehose Feed

要设置 Amazon Data Firehose Feed,请执行以下操作:

  1. 创建 Amazon Data Firehose Feed,然后复制端点网址和密钥。
  2. 创建 API 密钥以向 Google Security Operations 进行身份验证。您还可以重复使用现有的 API 密钥对 Google 安全运营团队进行身份验证。
  3. 在 Amazon Data Firehose 中指定端点网址。

创建 Amazon Data Firehose Feed

  1. 在 Google Security Operations 菜单中,选择设置,然后点击 Feed
  2. 点击新增
  3. Feed 名称字段中,输入 Feed 的名称。
  4. 来源类型列表中,选择 Amazon Data Firehose
  5. 选择日志类型。例如,如需为 Open Cybersecurity Schema Framework 创建 Feed,请选择 Open Cybersecurity Schema Framework (OCSF) 作为 Log type
  6. 点击下一步
  7. 可选:为以下输入参数指定值:
    • 分隔符:用于分隔日志行(例如 \n)的分隔符。
    • 资产命名空间资产命名空间
    • 提取标签:要应用于此 Feed 中的事件的标签。
  8. 点击下一步
  9. 最终确定界面中查看新的 Feed 配置,然后点击提交
  10. 点击 Generate Secret Key(生成密钥),以生成用于对此 Feed 进行身份验证的密钥。
  11. 复制并存储密钥,因为您无法再查看此密钥。您可以生成 但重新生成密钥会导致 先前的密钥会作废。
  12. 详情标签页中,从端点信息字段复制 Feed 端点网址。在 Amazon Data Firehose 中为传送流指定目标设置时,您需要此端点网址。
  13. 要停用 Feed,请点击已启用 Feed 切换开关。该 Feed 默认处于启用状态。
  14. 点击完成

为 Amazon Data Firehose Feed 创建 API 密钥

  1. 前往 Google Cloud 控制台的凭据页面。
  2. 点击创建凭据,然后选择 API 密钥
  3. 限制对 Google Security Operations API 的 API 密钥访问。

指定端点网址

在 Amazon Data Firehose 中,指定 HTTPS 端点和访问密钥。

  1. 将 API 密钥附加到 Feed 端点网址,并按以下格式将此网址指定为 HTTP 端点网址:

      ENDPOINT_URL?key=API_KEY
    

    替换以下内容:

    • ENDPOINT_URL:Feed 端点网址。
    • API_KEY:用于向 Google Security Operations 进行身份验证的 API 密钥。
  2. 对于访问密钥,请指定您在创建 Amazon Data Firehose Feed

设置 HTTPS 网络钩子 Feed

如需设置 HTTPS Webhook Feed,请执行以下操作:

  1. 创建 HTTPS 网络钩子 Feed 并复制端点网址和密钥。
  2. 创建使用端点网址指定的 API 密钥。您还可以重复使用现有的 API 密钥来对 Google 安全运营团队进行身份验证。
  3. 在应用中指定端点网址。

前提条件

创建 HTTPS 网络钩子 Feed

  1. 在 Google Security Operations 菜单中,选择 Settings,然后点击 Feed
  2. 点击新增
  3. Feed 名称字段中,输入 Feed 的名称。
  4. 来源类型列表中,选择 Webhook
  5. 选择日志类型。例如,如需为 Open Cybersecurity Schema Framework 创建 Feed,请选择 Open Cybersecurity Schema Framework (OCSF) 作为 Log type
  6. 点击下一步
  7. 可选:为以下输入参数指定值:
    • 拆分分隔符:用于分隔日志行的分隔符,例如 \n
    • 资产命名空间资产命名空间
    • 提取标签:要应用于此 Feed 中的事件的标签。
  8. 点击下一步
  9. 最终确定界面中查看新的 Feed 配置,然后点击提交
  10. 点击 Generate Secret Key(生成密钥),以生成用于对此 Feed 进行身份验证的密钥。
  11. 复制并存储密钥,因为您无法再查看此密钥。您可以生成 但重新生成密钥会导致 先前的密钥会作废。
  12. 详细信息标签页中,从端点信息字段复制 Feed 端点网址。 您需要在客户端应用中指定此端点网址。
  13. 要停用 Feed,请点击已启用 Feed 切换开关。该 Feed 默认处于启用状态。
  14. 点击完成

为网络钩子 Feed 创建 API 密钥

  1. 前往 Google Cloud 控制台的凭据页面。
  2. 点击创建凭据,然后选择 API 密钥
  3. 限制对 Google Security Operations API 的 API 密钥访问。

指定端点网址

  1. 在客户端应用中,指定 webhook Feed 中提供的 HTTPS 端点。
  2. 通过在自定义标头中指定 API 密钥和密钥来启用身份验证 格式如下:

    X-goog-api-key = API_KEY

    X-Webhook-Access-Key = SECRET

    我们建议您将 API 密钥指定为标头,而不是将其指定 。如果您的 webhook 客户端不支持自定义标头,您可以指定 API 密钥和 Secret 密钥,使用以下格式的查询参数:

      ENDPOINT_URL?key=API_KEY&secret=SECRET
    

    替换以下内容:

    • ENDPOINT_URL:Feed 端点网址。
    • API_KEY:用于向 Google Security Operations 进行身份验证的 API 密钥。
    • SECRET:您为了对 Feed 进行身份验证而生成的密钥。

Google Cloud Storage Feed 设置示例

  1. 在 Google Security Operations 菜单中,选择 Settings,然后点击 Feed
  2. 点击 Add New(新增)。
  3. 来源类型中,选择 Google Cloud Storage
  4. 选择日志类型。例如,为 Google Kubernetes Engine 创建 Feed, 审核日志,选择 Google Kubernetes Engine 审核日志作为日志类型
  5. 点击获取服务账号。Google Security Operations 会提供一个唯一的服务账号,供 Google Security Operations 用来提取数据。
  6. 为服务账号配置访问 Cloud Storage 对象的访问权限。 在本文档中,请参阅向 Google Security Operations 服务账号授予访问权限
  7. 点击下一步
  8. 根据您创建的 Cloud Storage 配置,为以下字段指定值:
    • 存储桶 URI
    • URI 是
    • 来源删除选项
  9. 点击下一步,然后点击提交

向 Google Security Operations 服务账号授予访问权限

  1. 在 Google Cloud 控制台中,进入 Cloud Storage 存储桶页面。

    进入“存储桶”

  2. 向服务账号授予对相关 Cloud Storage 对象的访问权限。

    • 如需授予对特定文件的读取权限,请完成以下步骤:

      1. 选择相应文件,然后点击修改权限
      2. 点击添加主账号
      3. 新的主账号字段中,输入 Google Security Operations 服务账号的名称。
      4. 向 Google 安全运营服务账号分配包含读取权限的角色。例如,Storage Object Viewer (roles/storage.objectViewer)。只有在未启用统一存储桶级访问权限的情况下,才能执行此操作。
      5. 点击保存
    • 如需授予对多个文件的读取权限,您必须在 存储桶级目录。您必须将 Google Security Operations 服务账号添加为主账号 存储桶并为其授予 IAM Storage Object Viewer (roles/storage.objectViewer) 角色。

      如果您将 Feed 配置为删除源文件,则必须将 Google Security Operations 服务账号添加为存储桶的主账号,并为其授予 IAM Storage Object Admin (roles/storage.objectAdmin) 角色。

配置 VPC Service Controls

如果启用了 VPC Service Controls,则需要有入站规则才能访问 Cloud Storage 存储桶。

入站流量规则中必须允许使用以下 Cloud Storage 方法:

  • google.storage.objects.list。对于单个文件 Feed 是必需的。
  • google.storage.objects.get。对于需要目录或子目录访问权限的 Feed 而言是必需的。
  • google.storage.objects.delete。对于需要删除源文件的 Feed,此属性为必需属性。

入站规则示例

- ingressFrom:
  identities:
    - serviceAccount:8911409095528497-0-account@partnercontent.gserviceaccount.com
  sources:
  - accessLevel: "*"
  ingressTo:
  operations:
  - serviceName: storage.googleapis.com
    methodSelectors:
    - method: google.storage.objects.list
    - method: google.storage.objects.get
    - method: google.storage.objects.delete
  resources:
  - projects/PROJECT_ID

Feed 状态

您可以在初始的 Feed 页面中监控 Feed 的状态。Feed 可能具有以下状态:

  • 有效 - Feed 已配置,可以将数据注入到您的 Google Security Operations 账号。
  • 正在进行 - Google Security Operations 正在尝试从所配置的第三方提取数据。
  • 已完成 - 此 Feed 已成功检索到数据。
  • 已归档 - Feed 已停用。
  • 失败 - Feed 未能成功提取数据。这可能是由于配置问题造成的。点击相应题目以显示配置错误。更正错误并重新提交 Feed 后,请返回 Feed 页面,确定 Feed 现在是否在正常运行。

修改 Feed

Feed 页面中,您可以修改现有的 Feed:

  1. 将指针悬停在某个现有 Feed 上,然后点击 more_vert

  2. 点击修改 Feed。您现在可以更改 Feed 的输入参数,并将其重新提交给 Google Security Operations。Google Security Operations 将尝试使用修改后的 Feed。

启用和停用 Feed

状态列中,已启用的 Feed 会标记为有效进行中已完成失败。已停用的字段会被标记为已归档。有关说明,请参阅 Feed 状态

Feed 页面中,您可以启用或停用任何现有 Feed:

  1. 将指针悬停在现有 Feed 上,然后点击右侧列中的 more_vert

  2. 如需启用 Feed,请点击启用 Feed 切换开关。

  3. 要停用某个 Feed,请点击停用 Feed 切换开关。该 Feed 现在标记为已归档

删除 Feed

您还可以在 Feed 页面中删除现有 Feed:

  1. 将指针悬停在现有 Feed 上,然后点击右侧列中的 more_vert

  2. 点击删除 Feed。系统会打开“删除 Feed”窗口。如要永久删除该 Feed,请点击是,删除

控制提取速率

当租户的数据提取速率达到特定阈值时,Google 安全运营团队会限制新数据 Feed 的提取速率,以防止提取速率较高的来源影响其他数据源的提取速率。在这种情况下,会出现延迟,但不会丢失数据。注入 容量和租户的使用历史记录决定了阈值。

您可以通过联系 Cloud Customer Care

问题排查

Feed 页面中,您可以查看现有 Feed 的详细信息,例如来源类型、日志类型、Feed ID 和状态:

  1. 将指针悬停在某个现有 Feed 上,然后点击 more_vert

  2. 点击查看 Feed。系统随即会显示一个对话框,其中显示了 Feed 详情。对于处理失败的 Feed 您可以在详细信息下找到错误详情 >状态

对于失败的 Feed,详细信息包括错误原因和解决步骤。 下表说明了您在使用数据 Feed 时可能会遇到的错误消息。

错误代码 原因 问题排查
ACCESS_DENIED Feed 配置中提供的身份验证账号缺失 所需权限。 验证 Feed 配置中提供的身份验证账号是否具有所需的权限。如需了解必要的权限,请参阅 Feed 文档。
ACCESS_TOO_FREQUENT 由于尝试访问来源的次数过多,Feed 未能正常提取数据。 与 Google Security Operations 支持团队联系。
CONNECTION_DROPPED 已建立与来源的连接,但在 Feed 完成之前连接已关闭。 此错误是暂时性的,应用会重试请求。如果问题仍然存在,请与支持团队联系。
CONNECTION_FAILED 应用无法连接到来源 IP 地址和端口。

请检查以下各项:

  • 来源可用。
  • 防火墙不会阻止连接。
  • 与服务器关联的 IP 地址正确无误。
  • 如果问题仍然存在,请与 Google 安全运营支持团队联系。

DNS_ERROR 无法解析来源主机名。 服务器主机名可能拼写有误。请检查网址并确认拼写是否正确。
FILE_FAILED 已建立与来源的连接,但文件或资源存在问题。

请检查以下各项:

  • 文件未损坏。
  • 文件级权限正确无误。

如果问题仍然存在,请与 Google 安全运营支持团队联系。

FILE_NOT_FOUND 已建立与来源的连接,但找不到文件或资源。

请检查以下各项:

  • 文件在来源上存在。
  • 相应用户拥有文件的访问权限。

如果问题仍然存在,请与 Google Security Operations 支持团队联系。

GATEWAY_ERROR API 针对 Google Security Operations 进行的调用返回了网关错误。 验证 Feed 的来源详细信息。应用将重试请求。
INTERNAL_ERROR 由于内部错误,无法提取数据。 如果问题仍然存在,请与 Google Security Operations 支持团队联系。
INVALID_ARGUMENT 已建立与来源的连接,但由于参数无效,Feed 未能成功提交。 检查 Feed 配置。如需详细了解如何设置 Feed,请参阅 Feed 文档。如果问题仍然存在,请与 Google 安全运营支持团队联系。
INVALID_FEED_CONFIG Feed 配置包含无效值。 请检查 Feed 配置中是否存在不正确的设置。请参阅 Feed 文档,了解正确的语法。
INVALID_REMOTE_RESPONSE 已建立与来源的连接,但响应不正确。 检查 Feed 配置。详细了解如何设置 Feed。如果问题仍然存在,请与 Google Security Operations 支持团队联系。
LOGIN_FAILED 已建立与来源的连接,但凭据不正确或缺失。 重新输入来源的凭据,确认其正确无误。
NO_RESPONSE 已与来源建立连接,但来源未响应。 确保该来源可以支持 Google Security Operations 发来的请求。如果问题仍然存在,请与 Google Security Operations 支持团队联系。
PERMISSION_DENIED 已建立与来源的连接,但授权出现问题。 验证是否已添加所需的访问权限。
REMOTE_SERVER_ERROR 已建立与来源的连接,但来源未响应数据。 确保来源可用且正在响应数据。如果问题仍然存在,请与 Google 安全运营支持团队联系。
REMOTE_SERVER_REPORTED_BAD_REQUEST 已建立与来源的连接,但来源拒绝了请求。 检查 Feed 配置。如需了解详情,请参阅 Feed 文档。如果问题仍然存在,请与 Google Security Operations 支持团队联系。
SOCKET_READ_TIMEOUT 已建立与来源的连接,但连接在数据传输完成之前超时。 此错误是暂时性的,应用会重试请求。如果问题仍然存在,请与 Google 安全运营支持团队联系。
TOO_MANY_ERRORS 由于 Feed 从来源遇到多个错误,因此超时。 请与 Google Security Operations 支持团队联系。
TRANSIENT_INTERNAL_ERROR Feed 出现临时内部错误。 此错误是暂时性的,应用会重试请求。如果问题仍然存在,请与 Google 安全运营支持团队联系。
UNSAFE_CONNECTION 由于 IP 地址受限,应用未能建立连接。 此错误是暂时性的,Google 安全运营团队会重试该请求。如果问题仍然存在,请与 Google Security Operations 支持团队联系。
HTTP_400 Feed 因请求无效而失败。 检查 Feed 配置。详细了解如何设置 Feed。如果问题仍然存在,请与 Google Security Operations 支持团队联系。
HTTP_403 已建立与来源的连接,但授权出现问题。 确认是否已添加所需的访问权限和权限。
HTTP_404 已建立与来源的连接,但找不到文件或资源。

请检查以下各项:

  • 来源中存在相应文件。
  • 相应用户拥有文件的访问权限。

如果问题仍然存在,请与 Google 安全运营支持团队联系。

HTTP_429 Feed 超时,因为尝试访问来源的次数过多。 请与 Google Security Operations 支持团队联系。
HTTP_500 已与来源建立连接,但来源未响应数据。 确保来源可用且正在响应数据。如果问题仍然存在,请与 Google Security Operations 支持团队联系。
HTTP_502 Feed 遇到了网关错误。 此错误是暂时性的,应用会重试请求。如果问题仍然存在,请与 Google Security Operations 支持团队联系。
HTTP_504 Google Security Operations 无法连接到来源 IP 地址和端口。 此错误是暂时性的,应用会重试请求。

请检查以下各项:

  • 该来源可用。
  • 防火墙未阻止连接。
  • 与服务器关联的 IP 地址正确无误。

如果问题仍然存在,请与 Google 安全运营支持团队联系。