# AWS CloudFront

## 개요

Panther는 Amazon Web Services(AWS) [CloudFront 표준 로그(액세스 로그라고도 함)](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/AccessLogs.html) 를 AWS S3를 통해 수집하는 것을 지원합니다.

## Panther에 AWS CloudFront 표준 로그를 온보딩하는 방법

### 1단계: CloudFront 배포에서 표준 로깅 활성화

CloudFront 로그를 Panther로 가져오려면 먼저 모니터링하려는 CloudFront 배포에서 표준 로깅을 활성화해야 합니다. 아래 지침은 기존 배포를 편집하는 방법을 설명하지만, 새 배포를 생성하는 동안 표준 로깅을 활성화할 수도 있습니다.

1. AWS 콘솔에서 **CloudFront**.
2. 왼쪽 탐색 모음에서 다음을 클릭합니다. **배포로 이동합니다.**
   * 관심 있는 배포를 찾은 다음 클릭합니다.
3. 오른쪽 상단의 **설정** 타일의 **편집**.
4. 아래로 스크롤하여 **표준 로깅** 필드를 찾아 다음으로 설정합니다. **켬**. 나타나는 필드를 구성합니다:
   * **S3 버킷**: 로그를 보낼 버킷의 이름을 입력합니다.
   * **로그 접두사 -&#x20;*****선택 사항***: 원하시면 로그 파일 이름 앞에 붙일 접두사 값을 입력합니다.
   * **쿠키 로깅**: 이 필드를 다음으로 선택적으로 설정합니다. **켬**.
     * 만약 **쿠키 로깅** 가 **켬**, [`AWS.CloudFrontAccess`](#aws.cloudfrontaccess) 스키마는 표준 로그에 전송된 쿠키를 캡처합니다.

<figure><img src="/files/94ca6f1d53153ad36c422f46d851f8f57b7256f5" alt="Under a Standard logging header are Off/On radio buttons. Below those are three fields: S3 bucket, Log prefix - optional, and Cookie logging." width="563"><figcaption></figcaption></figure>

### 2단계: Panther에서 CloudFront 로그 소스 생성

{% hint style="info" %}
CloudFront 표준 로그를 라우팅하는 S3 버킷이 이미 Panther에 온보딩되어 있다면, 해당 소스에 `AWS.CloudFrontAccess` 스키마를 연결하고 이 단계를 건너뛰면 됩니다.
{% endhint %}

1. 왼쪽 탐색 모음에서 Panther Console의 **구성** > **로그 소스**.
2. 클릭 **새로 만들기**.
3. "AWS CloudFront"를 검색한 다음 해당 타일을 클릭합니다.
4. 슬라이드아웃 패널에서 **설정 시작**.\\

   <figure><img src="/files/79a50c33afe4a11794508fb7a8d90a502d18b537" alt="An arrow is drawn from an &#x22;AWS CloudFront&#x22; tile in the background to a Start Setup button on a slide-out panel. The panel is titled &#x22;AWS CloudFront.&#x22;"><figcaption></figcaption></figure>
5. 다음을 따르세요 [S3 구성에 대한 Panther의 문서](/ko/data-onboarding/data-transports/aws/s3.md).
   * 1단계에서 사용한 S3 버킷의 이름을 제공해야 합니다.

## 지원되는 로그

### AWS.CloudFrontAccess

```yaml
스키마: AWS.CloudFrontAccess
parser:
    csv:
        delimiter: "\t"
        columns:
            - date
            - time
            - x-edge-location
            - sc-bytes
            - c-ip
            - cs-method
            - cs-Host
            - cs-uri-stem
            - sc-status
            - cs-Referer
            - cs-UserAgent
            - cs-uri-query
            - cs-Cookie
            - x-edge-result-type
            - x-edge-request-id
            - x-host-header
            - cs-protocol
            - cs-bytes
            - time-taken
            - x-forwarded-for
            - ssl-protocol
            - ssl-cipher
            - x-edge-response-result-type
            - cs-protocol-version
            - fle-status
            - fle-encrypted-fields
            - c-port
            - time-to-first-byte
            - x-edge-detailed-result-type
            - sc-content-type
            - sc-content-len
            - sc-range-start
            - sc-range-end
        skipPrefix: '#'

        emptyValues:
            - '-'
        expandFields:
            timestamp: '%{date} %{time}'
fields:
    - 이름: 타임스탬프
      description: 이벤트가 발생한 날짜와 시간입니다.
      유형: 타임스탬프
      timeFormat: '%Y-%m-%d %H:%M:%S'
      isEventTime: true
    - name: x-edge-location
      description: 요청을 처리한 AWS 엣지 위치입니다.
      type: string
    - name: sc-bytes
      description: 클라이언트에 전송된 바이트 수입니다.
      type: bigint
    - name: c-ip
      description: 요청을 보낸 시청자의 IP 주소입니다.
      type: string
      indicators:
        - ip
    - name: cs-method
      description: 요청에 사용된 HTTP 메서드입니다.
      type: string
    - name: cs-Host
      description: 요청의 호스트 헤더입니다.
      type: string
      indicators:
        - hostname
    - name: cs-uri-stem
      description: 요청의 URI 경로입니다.
      type: string
    - name: sc-status
      description: 응답의 HTTP 상태 코드입니다.
      type: bigint
    - name: cs-Referer
      description: HTTP 리퍼러입니다.
      type: string
      indicators:
        - URL
    - name: cs-UserAgent
      description: 요청의 User-Agent 헤더입니다.
      type: string
    - name: cs-uri-query
      description: URI의 쿼리 문자열 부분입니다.
      type: string
    - name: cs-Cookie
      description: 있는 경우 요청의 Cookie 헤더입니다.
      type: string
    - name: x-edge-result-type
      description: 요청 결과의 유형입니다.
      type: string
    - name: x-edge-request-id
      description: CloudFront에서 생성한 고유 요청 ID입니다.
      type: string
    - name: x-host-header
      description: 요청의 호스트 헤더입니다.
      type: string
    - name: cs-protocol
      description: 요청에 사용된 프로토콜입니다.
      type: string
    - name: cs-bytes
      description: 응답 바이트입니다.
      type: bigint
    - name: time-taken
      description: 서버가 시청자의 요청을 받은 시점부터 서버가 응답의 마지막 바이트를 출력 큐에 기록할 때까지의 시간(초)입니다.
      type: float
    - name: x-forwarded-for
      description: 요청을 시작한 시청자의 IP 주소입니다.
      type: string
      indicators:
        - ip
    - name: ssl-protocol
      description: 요청과 응답 전송을 위해 협상된 SSL/TLS 프로토콜입니다.
      type: string
    - name: ssl-cipher
      description: 요청과 응답 암호화를 위해 협상된 SSL/TLS 암호입니다.
      type: string
    - name: x-edge-response-result-type
      description: '시청자에게 반환하기 직전에 서버가 응답을 분류한 방식입니다. 다음 중 하나일 수 있습니다: Hit, RefreshHit, Miss, LimitExceeded, CapacityExceeded, Error, Redirect'
      type: string
    - name: cs-protocol-version
      description: 시청자가 요청에서 지정한 HTTP 버전입니다.
      type: string
    - name: fle-status
      description: 요청 본문이 성공적으로 처리되었는지 여부를 나타내는 필드 수준 암호화 상태입니다.
      type: string
    - name: fle-encrypted-fields
      description: 암호화되어 원본으로 전달된 필드 수준 암호화 필드의 수입니다.
      type: string
    - name: c-port
      description: 시청자의 요청 포트 번호입니다.
      type: bigint
    - name: time-to-first-byte
      description: 요청을 받은 시점부터 응답의 첫 번째 바이트를 기록할 때까지의 시간(초)입니다.
      type: float
    - name: x-edge-detailed-result-type
      description: 특정 오류에 대한 추가 정보를 제공하는 상세 결과 유형입니다.
      type: string
    - name: sc-content-type
      description: 응답의 HTTP Content-Type 헤더 값입니다.
      type: string
    - name: sc-content-len
      description: 응답의 HTTP Content-Length 헤더 값입니다.
      type: bigint
    - name: sc-range-start
      description: 응답에 HTTP Content-Range 헤더가 포함된 경우의 범위 시작 값입니다.
      type: bigint
    - name: sc-range-end
      description: 응답에 HTTP Content-Range 헤더가 포함된 경우의 범위 종료 값입니다.
      type: bigint
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.panther.com/ko/data-onboarding/supported-logs/aws/cloudfront.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
