收集 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 项目管理员角色
  • 支持日志转发的 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 Virtual Dedicated Cloud:选择一个区域以转发该区域中所有实例的日志。
    • AuraDS Enterprise:选择一个区域以转发该区域中所有实例的日志。
  6. 选择要转发的日志类型:

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

    • 移除开始条目:启用后,仅转发查询结束条目(日志量减少约 50%)。
    • 包含:选择所有查询仅限成功查询仅限失败查询
  8. 按照向导中特定于 Google Cloud Platform 的说明操作。

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

  10. 等待状态从正在设置 更改为正在转发

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

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

  1. GCP 控制台 中,前往 Logging > 日志路由器
  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. 点击 Add New Feed (添加新 Feed)。
  3. 点击配置单个 Feed
  4. Feed 名称 字段中,输入 Feed 的名称(例如 Neo4j Aura Logs)。
  5. 选择 Google Cloud Storage V2 作为来源类型
  6. 选择 NEO4J 作为日志类型
  7. 点击 Get Service Account (获取服务账号)。
  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 资产创建时间
namespace principal.domain.tech.product_object_id 网域中的产品对象 ID
properties.host_group principal.hostname 来源主机名
msg principal.process.command_line 进程的命令行
user_id principal.user.userid 主账号的用户 ID
role 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 目标主机名
database target.resource.name 目标资源名称
roles target.user.attribute.roles 与目标用户关联的角色
user_dest target.user.userid 目标用户的 ID
metadata.product_name metadata.product_name 产品名称
metadata.vendor_name metadata.vendor_name 供应商名称

更新日志

查看此解析器的更新日志

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