

# Drupal Core에 대한 소스 구성
<a name="drupal-core-source-setup"></a>

## Drupal Core와 통합
<a name="drupal-core-integration"></a>

Drupal Core는 PHP를 기반으로 구축된 기본 오픈 소스 웹 애플리케이션 프레임워크로, 웹 사이트, 애플리케이션 및 디지털 경험을 구축하기 위한 기본 플랫폼을 제공합니다. CloudWatch 파이프라인은 사용자 지정 보기 기반 REST API를 사용하여 Drupal Core 사이트에서 콘텐츠 변경 내용, 사용자 인증 이벤트 및 관리 작업을 포함한 감사 로그 데이터를 검색합니다. 이 API를 사용하면 REST 엔드포인트를 통해 시간으로 필터링된 로그 데이터에 액세스할 수 있으므로 구성 가능한 기간으로 범위가 지정된 활동 레코드를 검색할 수 있습니다.

## Drupal Core를 사용하여 인증
<a name="drupal-core-authentication"></a>

로그를 읽으려면 Drupal Core 사이트에서 파이프라인이 인증되어야 합니다. 플러그인은 기본 인증(사용자 이름과 암호를 사용하는 HTTP 기본 인증)을 지원합니다.

**Drupal Core에 대한 기본 인증 구성**
+ Drupal Core 관리자 인터페이스에 로그인하고 Administration → Extend(`/admin/modules`)로 이동합니다.
+ RESTful Web Services, Serialization, HTTP Basic Authentication, Views와 같은 모듈을 활성화합니다. 설치를 선택합니다.
+ Composer(`composer require drupal/admin_audit_trail`)를 통해 Admin Audit Trail 모듈을 설치 및 활성화하고 `drush en admin_audit_trail -y && drush cr`을 실행하여 활성화합니다.
+ Structure → Views로 이동하고 이름이 `Audit Logs API`인 새 보기를 생성합니다. Show를 `Log entries`로 설정하고 Provide a REST export를 활성화하며 REST 내보내기 경로를 `/api/v1/audit-logs`로 설정합니다.
+ View 편집기에서 2개의 노출된 Watchdog: Timestamp 필터(연산자가 `is greater than or equal to`이고 필터 식별자가 `starttime`인 필터, 연산자가 `is less than`이고 필터 식별자가 `endtime`인 필터)를 추가합니다.
+ View의 REST EXPORT SETTINGS 섹션에서 Authentication을 선택하고 `basic_auth`를 활성화합니다.
+ People → Permissions로 이동하고 API 액세스가 필요한 역할에 액세스 관리자 감사 추적 및 REST 리소스 구성 권한을 부여합니다. 보기를 저장합니다.
+ AWS Secrets Manager에서 보안 암호를 생성하고 키 `username` 아래에 Drupal Core 사용자 이름을 저장하고 키 `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 로그 그룹에서 데이터를 사용할 수 있습니다.

## 지원되는 Open Cybersecurity Schema Framework 이벤트 클래스
<a name="drupal-core-ocsf-events"></a>

이 통합은 OCSF 스키마 버전 v1.5.0을 지원하고 인증(3002), 엔터티 관리(3004), HTTP 활동(4002) 및 애플리케이션 수명 주기(6002)에 매핑되는 이벤트를 변환합니다. 나열되지 않은 이벤트는 OCSF에 매핑되지 않으며 싱크에 원시 로그로 전달됩니다.

**인증**에는 다음 이벤트 유형이 포함됩니다.
+ 사용자 - 로그인 및 인증 관련 이벤트

**엔터티 관리**에는 다음 이벤트 유형이 포함됩니다.
+ 사용자 - 사용자 생성 및 삭제
+ 콘텐츠
+ 설명

**HTTP 활동**에는 다음 이벤트 유형이 포함됩니다.
+ 액세스 거부됨
+ 페이지를 찾을 수 없음
+ php
+ 새 사용자 지정 유형

**애플리케이션 수명 주기**에는 다음 이벤트 유형이 포함됩니다.
+ 시스템
+ cron