

# Drupal Core 的来源配置
<a name="drupal-core-source-setup"></a>

## 与 Drupal Core 集成
<a name="drupal-core-integration"></a>

Drupal Core 是基于 PHP 构建的基础开源 Web 应用程序框架，为构建网站、应用程序和数字体验提供了基础平台。CloudWatch 管道使用基于视图的自定义 REST API，从 Drupal Core 站点检索审核日志数据，包括内容更改、用户身份验证事件和管理操作。该 API 允许通过 REST 端点访问经过时间筛选的日志数据，从而支持检索可配置时段内的活动记录。

## 使用 Drupal Core 进行身份验证
<a name="drupal-core-authentication"></a>

要读取日志，该管道需要通过 Drupal Core 站点进行身份验证。该插件支持基本身份验证（使用用户名和密码进行 HTTP 基本身份验证）。

**为 Drupal Core 配置基本身份验证**
+ 登录您的 Drupal Core 管理界面，然后导航到“管理”→“扩展 (`/admin/modules`)”。
+ 启用以下模块：RESTful Web 服务、序列化、HTTP 基本身份验证和视图。选择安装。
+ 通过编辑器 (`composer require drupal/admin_audit_trail`) 安装并启用管理员审计跟踪记录模块，然后运行 `drush en admin_audit_trail -y && drush cr` 将其激活。
+ 导航到“结构”→“视图”，然后创建名为 `Audit Logs API` 的新视图。将“显示”设置为 `Log entries`，启用“提供 REST 导出”，并将 REST 导出路径设置为 `/api/v1/audit-logs`。
+ 在“视图”编辑器中，添加两个公开的监视程序：时间戳筛选器 – 一个带有运算符 `is greater than or equal to` 和筛选器标识符 `starttime`；另一个带有运算符 `is less than` 和筛选器标识符 `endtime`。
+ 在视图的“REST 导出设置”部分中，选择“身份验证”并启用 `basic_auth`。
+ 导航到“人员”→“权限”，向需要 API 访问权限的角色授予“访问管理员审计跟踪记录”和“管理员 REST 资源配置”权限。保存视图。
+ 在 AWS Secrets Manager 中，创建一个密钥并将 Drupal Core 用户名存储在 `username` 键下，将账户密码存储在 `password` 键下。

## 配置 CloudWatch 管道
<a name="drupal-core-pipeline-config"></a>

要将管道配置为读取日志，请选择 Drupal Core 作为数据来源。填写所需的信息：
+ **域名**：Drupal Core 站点的基本 URL（例如 `https://your-drupal-site.example.com`）。
+ **API 端点**：视图 REST 导出端点的路径（例如 `/api/v1/audit-logs`）。必须以 `/` 开头。
+ **范围**：以 ISO 8601 格式指定回顾持续时间（例如，过去 21 小时为 `PT21H`，过去 7 天为 `P7D`）。默认值为 0 小时，最大值为 90 天。

创建管道后，数据将在选定的 CloudWatch Logs 日志组中可用。

## 支持的开放式网络安全架构框架事件类
<a name="drupal-core-ocsf-events"></a>

此集成支持 OCSF 架构版本 1.5.0，并会转换映射到“身份验证”（3002）、“实体管理”（3004）、“HTTP 活动”（4002）和“应用程序生命周期”（6002）的事件。未列出的事件不会映射到 OCSF，并将作为原始日志转发到接收器。

**身份验证**包含以下事件类型：
+ 用户：与登录和身份验证相关的事件

**实体管理**包含以下事件类型：
+ 用户：用户创建和删除
+ content
+ comment

**HTTP 活动**包含以下事件类型：
+ 访问被拒绝
+ 未找到页面
+ php
+ 新的自定义类型

**应用程序生命周期**包含以下事件类型：
+ 系统
+ cron