收集 Neo4j Aura 日志

支持:

本文档介绍了如何使用 Google Cloud Storage V2 将 Neo4j Aura 日志注入 Google Security Operations。

Neo4j Aura 是一项全代管式云图数据库服务。它提供安全日志和查询日志,这些日志可以转发到 Google Cloud Logging,适用于 AuraDB Business Critical、AuraDB Virtual Dedicated Cloud 和 AuraDS Enterprise 层级。

准备工作

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

  • Google SecOps 实例
  • 启用了 Cloud Storage API 的 GCP 项目
  • 创建和管理 GCS 存储桶的权限
  • 管理 GCS 存储桶的 IAM 政策的权限
  • 创建 Cloud Logging 日志接收器的权限
  • 在 Google Cloud Platform 上运行的 Neo4j Aura 实例
  • Neo4j Aura Project Admin 角色
  • 支持日志转发的 Neo4j Aura 层级(AuraDB Business Critical、AuraDB Virtual Dedicated Cloud 或 AuraDS Enterprise)

创建 Google Cloud Storage 存储桶

  1. 前往 Google Cloud 控制台。
  2. 选择您的项目或创建一个新项目。
  3. 在导航菜单中,依次前往 Cloud Storage > 存储桶。
  4. 点击创建存储分区。
  5. 提供以下配置详细信息:

    设置 值
    指定存储桶的名称 输入一个全局唯一的名称(例如 neo4j-aura-logs)
    位置类型 根据您的需求进行选择(单区域、双区域、多区域)
    位置 选择位置(例如 us-central1)
    存储类别 标准(建议用于频繁访问的日志)
    访问权限控制 统一(推荐)
    保护工具 可选:启用对象版本控制或保留政策
  6. 点击创建。

配置 Neo4j Aura 日志转发到 Google Cloud Logging

Neo4j Aura 会将日志转发到您 GCP 项目中的 Google Cloud Logging。此配置在 Neo4j Aura 控制台中完成。

  1. 前往 Neo4j Aura 控制台。
  2. 使用您的 Neo4j 账号登录。
  3. 在边栏中,依次前往设置 > 日志转发。
  4. 点击配置日志转发。
  5. 选择日志转发的范围:
    • AuraDB Business Critical:选择要转发日志的特定实例。
    • AuraDB 虚拟专用云:选择一个区域,以转发该区域中所有实例的日志。
    • AuraDS Enterprise:选择一个区域,以转发该区域中所有实例的日志。
  6. 选择要转发的日志类型:

    • 安全日志:身份验证事件、授权事件和与安全相关的活动。
    • 查询日志:在数据库上执行的 Cypher 查询。
  7. 如果您选择了查询日志,请展开过滤条件部分以配置可选过滤条件:

    • 移除开始条目:启用此选项后,系统将仅转发查询结束条目(可将数据量减少约 50%)。
    • 包含:选择所有查询、仅限成功查询或仅限失败查询。
  8. 按照向导中针对 Google Cloud Platform 的说明操作。

  9. 完成向导,然后点击创建或保存。

  10. 等待状态从正在设置变为正在转发。

创建 Cloud Logging 接收器以将日志导出到 GCS

Neo4j Aura 将日志转发到 Google Cloud Logging 后,创建一个日志接收器,将这些日志导出到您的 GCS 存储桶。

  1. 在 GCP 控制台中,前往 Logging > Log Router。
  2. 点击创建接收器。
  3. 提供以下配置详细信息:

    设置 值
    接收器名称 输入名称(例如 neo4j-aura-to-gcs)
    接收器说明 输入说明(例如,Export Neo4j Aura logs to GCS for Chronicle)
  4. 点击下一步。

  5. 在选择接收器服务部分中,选择 Cloud Storage 存储桶。

  6. 在选择 Cloud Storage 存储桶下拉菜单中,选择您创建的存储桶(例如 neo4j-aura-logs)。

  7. 点击下一步。

  8. 在选择要包含在接收器中的日志部分,构建一个包含过滤器来选择 Neo4j Aura 日志。

    对于通过日志转发功能转发的 Neo4j Aura 日志,请使用以下过滤条件:

    resource.type="generic_node"
    resource.labels.namespace="neo4j-aura"
    
  9. 点击下一步。

  10. 检查接收器配置。

  11. 点击创建接收器。

验证日志导出到 GCS

  1. 等待 2-3 小时,GCS 存储桶中就会显示第一批日志条目。
  2. 在 GCP 控制台中,前往 Cloud Storage > 存储桶。
  3. 点击您的存储桶名称(例如 neo4j-aura-logs)。
  4. 验证日志文件是否正在存储桶中创建。

    Cloud Logging 会在目录分层结构下按日志类型和日期整理日志。目录结构将类似于:

    neo4j-aura-logs/
    ├── security.log/
    │   └── YYYY/
    │       └── MM/
    │           └── DD/
    │               └── HH:MM:SS_HH:MM:SS_S0.json
    └── query.log/
        └── YYYY/
            └── MM/
                └── DD/
                    └── HH:MM:SS_HH:MM:SS_S0.json
    

检索 Google SecOps 服务账号

Google SecOps 使用唯一的服务账号从您的 GCS 存储桶中读取数据。您必须向此服务账号授予对存储桶的访问权限。

获取服务账号电子邮件地址

  1. 前往 SIEM 设置 > Feed。
  2. 点击添加新 Feed。
  3. 点击配置单个 Feed。
  4. 在 Feed 名称字段中,输入 Feed 的名称(例如 Neo4j Aura Logs)。
  5. 选择 Google Cloud Storage V2 作为来源类型。
  6. 选择 NEO4J 作为日志类型。
  7. 点击获取服务账号。
  8. 系统会显示一个专属的服务账号邮箱。例如:

    chronicle-12345678@chronicle-gcp-prod.iam.gserviceaccount.com
    
  9. 复制此邮箱,以便在下一步中使用。

  10. 点击下一步。

  11. 为以下输入参数指定值:

    • 存储桶网址:输入 GCS 存储桶 URI:

      gs://neo4j-aura-logs/
      

      将 neo4j-aura-logs 替换为您的实际存储桶名称。

    • 来源删除选项:根据您的偏好选择删除选项:

      • 永不:转移后永不删除任何文件(建议用于测试)。
      • 删除已转移的文件:成功转移后删除文件。
      • 删除已转移的文件和空目录:在成功转移后删除文件和空目录。

    • 文件存在时间上限:包含在过去指定天数内修改过的文件(默认值为 180 天)

    • 资源命名空间:资源命名空间

    • 注入标签:要应用于此 Feed 中事件的标签

  12. 点击下一步。

  13. 在最终确定界面中查看新的 Feed 配置,然后点击提交。

向 Google SecOps 服务账号授予 IAM 权限

Google SecOps 服务账号需要您的 GCS 存储桶的 Storage Object Viewer 角色。

  1. 前往 Cloud Storage > 存储桶。
  2. 点击您的存储桶名称(例如 neo4j-aura-logs)。
  3. 前往权限标签页。
  4. 点击授予访问权限。
  5. 提供以下配置详细信息:

    • 添加主账号:粘贴 Google SecOps 服务账号电子邮件地址
    • 分配角色:选择 Storage Object Viewer
  6. 点击保存。

UDM 映射表

日志字段 UDM 映射 逻辑
id2 about.resource.attribute.labels 资源属性的标签
id3 about.resource.attribute.labels
timestamp_msg metadata.event_timestamp 活动时间戳
event_type metadata.event_type 事件类型
recordDate principal.asset.creation_time 资产创建时间
命名空间 principal.domain.tech.product_object_id 网域中的商品对象 ID
properties.host_group principal.hostname 来源主机名
msg principal.process.command_line 进程的命令行
user_id principal.user.userid 主账号的用户 ID
角色 roles.name 角色的名称
security_result security_result 安全结果详情
levelx security_result.severity 严重级别
levelx security_result.severity_details 详细的严重程度信息
properties.source src.resource.name 来源资源名称
properties.cluster_node target.hostname 目标主机名
数据库 target.resource.name 目标资源名称
角色 target.user.attribute.roles 与目标用户相关联的角色
user_dest target.user.userid 目标的用户 ID
metadata.product_name metadata.product_name 产品名称
metadata.vendor_name metadata.vendor_name 供应商名称

更新日志

查看此解析器的更新日志

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