收集 Cloud Identity Device Users 日志

支持的语言:

本文档介绍了如何使用 Cloud Storage 将 Cloud Identity 设备用户日志导出到 Google Security Operations。解析器首先从 JSON 格式的 Cloud Identity Device Users 日志中提取数据,并将时间戳转换为标准化格式。然后,它会将原始日志数据中的特定字段映射到统一数据模型 (UDM) 中用户实体、用户与资产之间的关系以及其他用户属性(例如管理状态和密码状态)的相应字段。

准备工作

请确保满足以下前提条件:

  • 您的 Google Cloud 项目中已启用 Google Cloud Identity。
  • Google SecOps 实例。
  • 对 Google Cloud Identity 和 Cloud Logging 的特权访问权限。

创建 Cloud Storage 存储桶

  1. 登录 Google Cloud 控制台
  2. 前往 Cloud Storage 存储分区页面。

    进入“存储桶”

  3. 点击创建

  4. 创建存储桶页面上,输入您的存储桶信息。完成以下每一步后,点击继续以继续执行后续步骤:

    1. 开始使用部分中,执行以下操作:

      1. 输入符合存储桶名称要求的唯一名称,例如 gcp-cloudidentity-users-logs
      2. 如需启用分层命名空间,请点击展开箭头以展开优化文件导向型和数据密集型工作负载部分,然后选择在此存储桶上启用分层命名空间

      3. 如需添加存储桶标签,请点击展开箭头以展开标签部分。

      4. 点击添加标签,然后为标签指定键和值。

    2. 选择数据存储位置部分中,执行以下操作:

      1. 选择位置类型
      2. 使用位置类型菜单选择一个位置,用于永久存储存储桶中的对象数据。

      3. 如需设置跨存储桶复制,请展开设置跨存储桶复制部分。

    3. 为数据选择一个存储类别部分中,为存储桶选择默认存储类别,或者选择 Autoclass 对存储桶数据进行自动存储类别管理。

    4. 选择如何控制对对象的访问权限部分中,清除强制执行禁止公开访问,然后为存储桶对象选择访问权限控制模型。

    5. 选择如何保护对象数据部分中,执行以下操作:

      1. 数据保护下,选择您要为存储桶设置的任何选项。
      2. 如需选择对象数据的加密方式,请点击标有数据加密的展开箭头,然后选择数据加密方法。
  5. 点击创建

配置 Cloud Identity 设备用户日志导出

  1. 登录 Google Cloud 控制台
  2. 前往日志记录 > 日志路由器
  3. 点击创建接收器
  4. 提供以下配置参数:

    • 接收器名称:输入一个有意义的名称,例如 Cloudidentity-Users-Sink
    • 接收器目标位置:选择 Cloud Storage 存储空间,然后输入存储桶的 URI,例如 gs://gcp-cloudidentity-users-logs
    • 日志过滤条件

      logName="projects/<your-project-id>/logs/cloudaudit.googleapis.com%2Factivity"
      resource.type="cloud_identity_user"
      
    • 设置导出选项:包含所有日志条目。

  5. 点击创建

配置 Cloud Storage 权限

  1. 前往 IAM 和管理> IAM
  2. 找到 Cloud Logging 服务账号。
  3. 授予对相应存储桶的 roles/storage.admin

设置 Feed

您可以通过两种不同的入口点在 Google SecOps 平台中设置 Feed:

  • SIEM 设置 > Feed > 添加新 Feed
  • 内容中心 > 内容包 > 开始

如何设置 Google Cloud 身份设备用户 Feed

  1. 点击 Google Cloud Compute 平台包。
  2. 找到 Google Cloud 身份设备用户日志类型,然后点击添加新 Feed
  3. 为以下字段指定值:
    • 来源类型:第三方 API
    • OAuth JWT 端点:用于检索 OAuth JSON Web 令牌 (JWT) 的端点。
    • JWT 声明颁发者:通常是客户端 ID。
    • JWT 声明主题:通常是电子邮件地址。
    • JWT 声明目标对象:JWT 声明目标对象。
    • RSA 私钥:以 PEM 格式输入。

高级选项

  • Feed 名称:用于标识 Feed 的预填充值。
  • 资源命名空间:与 Feed 关联的命名空间。
  • 提取标签:应用于相应 Feed 中所有事件的标签。
  1. 点击创建 Feed

如需详细了解如何为相应产品系列中的不同日志类型配置多个 Feed,请参阅按产品配置 Feed

UDM 映射表

日志字段 UDM 映射 逻辑
collection_time.nanos timestamp.nanos 直接从日志字段映射。表示事件时间戳(以纳秒为单位)。
collection_time.seconds timestamp.seconds 直接从日志字段映射。表示事件时间戳(以秒为单位)。
createTime entity.metadata.creation_timestamp date 过滤器解析后直接从日志字段映射。表示用户的创建时间戳。
managementState entity.additional.fields.value.string_value 直接从日志字段映射。表示用户的管理状态。
name entity.entity.resource.name 直接从日志字段映射。表示设备用户的完整资源名称。
passwordState entity.additional.fields.value.string_value 直接从日志字段映射。表示用户的密码状态。只有当原始日志中存在 passwordState 字段时,系统才会映射此字段。
userEmail entity.entity.user.email_addresses 直接从日志字段映射。表示用户的电子邮件地址。
entity.additional.fields.key 在解析器中设置为常量值 Management State。此字段用于为 managementState 值提供上下文。
entity.additional.fields.key 在解析器中设置为常量值 Password State。此字段用于为 passwordState 值提供上下文,并且仅当原始日志中存在 passwordState 时才会显示。
entity.entity.user.product_object_id 使用 grok 过滤条件从 name 字段中提取,捕获 deviceuser_id 部分。表示设备用户的唯一标识符。
entity.metadata.collected_timestamp.nanos collection_time.nanos 复制的联系人。表示收集日志时的时间戳。
entity.metadata.collected_timestamp.seconds collection_time.seconds 复制的联系人。表示收集日志时的时间戳。
entity.metadata.entity_type 在解析器中设置为常量值 USER
entity.metadata.product_name 在解析器中设置为常量值 GCP Cloud Identity Device Users
entity.metadata.vendor_name 在解析器中设置为常量值 Google Cloud Platform
relations.entity.asset.product_object_id 使用 grok 过滤条件从 name 字段中提取,捕获 device_id 部分。表示设备的唯一标识符。
relations.entity_type 在解析器中设置为常量值 ASSET
relations.relationship 在解析器中设置为常量值 MEMBER

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