# Auth0 로그

## 개요

Panther는 다음을 구성하여 Auth0 테넌트 로그를 수집합니다 [Auth0의 로그 스트리밍 서비스](https://auth0.com/docs/customize/log-streams) 이벤트를 Panther에 전송하려면 [HTTP 소스](https://docs.panther.com/ko/data-onboarding/data-transports/http).

## Auth0 로그를 Panther에 온보딩하는 방법

### 단계 1: Panther에서 새 Auth0 소스 생성

1. Panther 콘솔의 왼쪽 탐색 바에서 클릭하세요 **구성** > **로그 소스.**
2. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. **새로 만들기**.
3. “Auth0”를 검색한 다음 해당 타일을 클릭합니다.
   * 슬라이드 아웃 패널에서 **전송 메커니즘** 우측 상단의 드롭다운은 미리 채워진 상태일 것입니다 **HTTP** 옵션.
4. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. **설정 시작**.\
   ![The Auth0 log source setup page is shown, in the Panther Console. In the upper-right corner, the Transport Mechanism dropdown has a value of "HTTP," and to its right is a Start Setup button. Both are circled.](https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-0d6b21fee1726ba875973ff39eb2f5aa758dba44%2FScreenshot%202023-06-07%20at%204.35.28%20PM.png?alt=media)
5. Panther의 [HTTP 소스 구성에 대한 지침을 따르세요](https://docs.panther.com/ko/data-transports/http#how-to-set-up-an-http-log-source-in-panther)5단계부터 시작하여.
   * 설정 중 보안 구성 페이지에서 다음을 사용해야 합니다 [베어러 인증](https://docs.panther.com/ko/data-transports/http#bearer); 이는 Auth0가 지원하는 유일한 인증 방법입니다. 원형 화살표를 클릭하여 토큰 값을 생성하거나 직접 입력할 수 있습니다.

     !["Bearer Authentication"이라는 제목의 섹션이 표시됩니다. "Bearer Token Value" 필드 오른쪽에는 두 개의 화살표가 원형으로 배치된 버튼이 있으며 이 버튼이 원으로 표시되어 있습니다.](https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-11e00f12cdb0213d36a3b07584633f413a3cacaf%2Fimage.png?alt=media)
   * 이 소스로 전송된 페이로드는 다음의 적용을 받습니다 [모든 HTTP 소스에 대한 페이로드 요구사항](https://docs.panther.com/ko/data-transports/http#payload-requirements).
   * HTTP 엔드포인트 생성이 완료될 때까지 다음 단계로 진행하지 마세요.

### 단계 2: Auth0에서 새 로그 스트림 생성

1. Auth0 테넌트에 로그인합니다.
2. 대시보드에서 다음으로 이동합니다 **모니터링** > **스트림**.
3. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. **스트림 생성**.
4. 선택하세요 **커스텀 웹후크**.
5. 이벤트 스트림에 설명적인 이름을 지정하십시오. 예: `Panther 로그 스트림`.
6. 일반 구성 **페이로드 URL** 필드에 이 프로세스의 이전 단계에서 생성한 Panther의 Auth0 HTTP 소스 URL을 붙여넣습니다.
7. 일반 구성 **승인 토큰** 필드에 [1단계](#step-1-create-a-new-auth0-source-in-panther)에서 사용한 베어러 토큰을 입력하되 `Bearer` 를 포함해야 합니다. 전체 형식은 다음과 같아야 합니다 `Bearer <token value>`.
8. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. **"Resource": "\<secret ARN>"**.

## Panther 관리 디텍션

참조 [Panther 관리](https://docs.panther.com/detections/panther-managed) 의 Auth0 룰 [panther-analysis GitHub 리포지토리](https://github.com/panther-labs/panther-analysis/tree/master/rules/auth0_rules).

## 지원되는 로그 유형

### Auth0.Events

Auth0.Events는 Auth0 로그 스트림의 이벤트 로그입니다. 자세한 내용은 다음을 참조하십시오 [테넌트 로그 이벤트에 대한 Auth0의 문서](https://auth0.com/docs/deploy-monitor/logs).

````yaml
```yaml
schema: Auth0.Events
description: Auth0 로그 스트림의 이벤트 로그
referenceURL: https://auth0.com/docs/deploy-monitor/logs
필드:
  - name: log_id
    required: true
    description: 로그의 ID입니다.
    type: string
  - name: asdfg
    type: array
    검증:
      allow: ['authentication']
    element:
      type: string
  - name: data
    required: true
    description: 로그에 대한 정보를 포함하는 데이터 객체입니다.
    type: object
    필드:
      - 이름: date
        description: 이벤트가 발생한 날짜/시간입니다.
        type: timestamp
        isEventTime: true
        timeFormats:
          - rfc3339
      - 이름: type
        description: 이벤트 유형입니다.
        type: string
      - 이름: description
        description: 이 이벤트에 대한 설명입니다.
        type: string
      - name: connection
        description: 이벤트와 관련된 연결의 이름입니다.
        type: string
      - name: connection_id
        description: 이벤트와 관련된 연결의 ID입니다.
        type: string
      - name: client_id
        description: 클라이언트(애플리케이션)의 ID입니다.
        유형: json
      - name: client_name
        description: 클라이언트(애플리케이션)의 이름입니다.
        type: string
      - 이름: ip
        description: 로그 이벤트 소스의 IP 주소입니다.
        지표:
          - ip
        type: string
      - name: client_ip
        type: string
        description: 이벤트를 발생시킨 클라이언트의 IP 주소입니다.
        지표:
          - ip
      - 이름: hostname
        description: 이벤트가 적용되는 호스트명입니다.
        type: string
      - name: user_id
        description: 이벤트에 관련된 사용자의 ID입니다.
        type: string
        지표:
          - username
      - name: user_name
        description: 이벤트에 관련된 사용자의 이름입니다.
        유형: json
      - name: audience
        description: 이벤트가 적용되는 API 오디언스입니다.
        type: string
      - name: scope
        description: 이벤트에 적용된 스코프 권한입니다.
        유형: json
      - name: strategy
        description: 이벤트에 관련된 전략의 이름입니다.
        type: string
      - name: strategy_type
        description: 이벤트에 관련된 전략의 유형입니다.
        type: string
      - 이름: details
        description: 이 이벤트에 대한 추가 유용한 세부정보(구조는 이벤트 유형에 따라 다름).
        유형: json
      - name: log_id
        description: 이벤트의 고유 ID입니다.
        type: string
      - name: is_mobile
        description: 클라이언트가 모바일 기기(참)인지 데스크톱/노트북/서버(거짓)인지 여부입니다.
        유형: boolean
      - name: user_agent
        description: 이벤트를 발생시킨 클라이언트 기기의 사용자 에이전트 문자열입니다.
        type: string
      - name: location_info
        description: IP를 기반으로 이 이벤트를 트리거한 위치에 대한 정보입니다.
        type: object
        필드:
          - name: country_code
            description: 2자리 알파벳 Alpha-2 ISO 3166-1 국가 코드입니다.
            type: string
          - name: country_code3
            description: 3자리 알파벳 Alpha-3 ISO 3166-1 국가 코드입니다.
            type: string
          - name: country_name
            description: 영어로 된 전체 국가 이름입니다.
            type: string
          - name: city_name
            description: 영어로 된 전체 도시 이름입니다.
            type: string
          - name: latitude
            description: 전역 위도 위치입니다.
            type: float
          - name: longitude
            description: 전역 경도 위치입니다.
            type: float
          - name: time_zone
            description: tz 데이터베이스에서 찾은 시간대 이름입니다.
            type: string
          - name: continent_code
            description: 2자리 대륙 코드입니다.
            type: string
```
````
