> For the complete documentation index, see [llms.txt](https://docs.panther.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.panther.com/ko/data-onboarding/supported-logs/duo.md).

# Duo Security 로그

## 개요

Panther는 다음 Duo 로그를 다음을 통해 수집할 수 있습니다 [Duo API](https://duo.com/docs/adminapi#logs):

* [인증 로그(v2)](https://duo.com/docs/adminapi#authentication-logs)
* [관리자 로그](https://duo.com/docs/adminapi#administrator-logs)
* [전화 로그](https://duo.com/docs/adminapi#telephony-logs)
* [오프라인 등록 로그](https://duo.com/docs/adminapi#offline-enrollment-logs)

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

Duo 로그를 Panther에 온보딩하려면 아래 단계를 따르세요. 또한 [데이터 수집 비디오 개요](/ko/data-onboarding.md#video-overview) 를 보며 Duo 로그 온보딩을 빠르게 살펴볼 수도 있습니다.

### 1단계: Duo 애플리케이션 만들기

1. 안내를 따라 [여기](https://duo.com/docs/adminapi#first-steps) 새 Duo 애플리케이션을 만드세요.

   Duo Admin Panel에서 Owner 역할을 가진 관리자만 Admin API 애플리케이션을 만들거나 수정할 수 있습니다.
2. 애플리케이션에 **읽기 로그** 권한을 부여하세요.

### 2단계: Panther에서 새 Duo 소스 만들기

1. Panther Console의 왼쪽 탐색 모음에서 **다음을 구성하세요.** > **로그** **소스**.
2. 다음을 클릭한 다음 **새로 만들기.**
3. 선택 **Duo** 를 사용 가능한 로그 소스 목록에서 선택합니다. **설정 시작**.
4. 다음 화면에서 소스의 설명용 이름을 입력하고(예: `내 Duo 로그`) 모니터링할 로그 유형을 선택하세요.
5. 다음을 클릭한 다음 **설정.**
6. 아래 필드를 입력하세요:
   * **통합 키**: Duo 앱의 통합 키를 입력합니다.
   * **비밀 키**: Duo 앱의 비밀 키를 입력합니다.
   * **API 호스트 이름**: Duo 앱의 API 호스트 이름을 입력합니다.
7. 다음을 클릭한 다음 **Setup**. 그러면 성공 화면으로 이동합니다:

<figure><img src="/files/e0820e5acb9452e294cfe3ba72060f0fbbfd3b32" alt="The success screen reads, &#x22;Everything looks good! Panther will now automatically pull &#x26; process logs from your account&#x22;" width="281"><figcaption></figcaption></figure>

* 하나 이상의 [디택션 팩](https://docs.panther.com/detections/panther-managed/packs).
* 다음은 **이벤트가 처리되지 않을 때 알러트 트리거** 설정의 기본값은 **예**. 이 기능은 활성화된 상태로 두는 것을 권장합니다. 일정 기간 동안 로그 소스에서 데이터 흐름이 중단되면 알림을 받게 됩니다. 기간은 구성 가능하며 기본값은 24시간입니다.\\

  <figure><img src="/files/7db146cd7acee3d0704a4a8b2157f230cfa22168" alt="The &#x22;Trigger an alert when no events are processed&#x22; toggle is set to YES. The &#x22;How long should Panther wait before it sends you an alert that no events have been processed&#x22; setting is set to 1 Day" width="320"><figcaption></figcaption></figure>

## 지원되는 로그 유형

### Duo.Administrator

Duo 관리자 로그 이벤트.

자세한 내용은 [Duo 관리자 로그 문서를 참조하세요.](https://duo.com/docs/adminapi#administrator-logs)

<pre class="language-yaml"><code class="lang-yaml">schema: Duo.Administrator
parser:
    native:
        name: Duo.Administrator
description: Duo 관리자 로그 이벤트.
referenceURL: https://duo.com/docs/adminapi#administrator-logs
필드:
    - name: action
      필수: true
      description: 수행된 변경 유형입니다.
      유형: string
    - name: description
      description: 변경된 내용을 설명하는 문자열로, 자유 형식 텍스트 또는 직렬화된 JSON일 수 있습니다.
      유형: string
<strong>    - name: description_json
</strong>      description: 유효한 JSON인 경우 'Description' 필드를 JSON 객체로 표시합니다. 그렇지 않으면 null입니다.
      type: json
    - name: isotimestamp
      필수: true
      description: 이벤트의 ISO8601 타임스탬프입니다.
      type: timestamp
      timeFormat: rfc3339
      isEventTime: true
    - name: object
      description: '작업이 수행된 객체입니다. 예: 사용자의 경우 "jsmith", 전화의 경우 "(555) 713-6275 x456", 토큰의 경우 "HOTP 8자리 123456".'
      유형: string
    - name: timestamp
      description: 이벤트의 Unix 타임스탬프입니다.
      type: timestamp
      timeFormat: unix
    - name: username
      필수: true
      description: Duo Admin Panel에서 작업을 수행한 관리자의 전체 이름입니다. 작업이 API로 수행된 경우 이 값은 "API"입니다. 비활성 사용자 삭제와 같은 자동 작업의 경우 사용자 이름은 "System"입니다. Directory Sync에서 동기화된 변경 사항의 사용자 이름은 (예: "AD Sync: directory name") 형식을 따릅니다.
      유형: string
      indicators:
        - username
</code></pre>

### Duo.Authentication

Duo 인증 로그 이벤트(v2).

자세한 내용은 [Duo 인증 로그 문서를 참조하세요.](https://duo.com/docs/adminapi#authentication-logs)

```yaml
schema: Duo.Authentication
parser:
    native:
        name: Duo.Authentication
description: Duo 인증 로그 이벤트(v2).
referenceURL: https://duo.com/docs/adminapi#authentication-logs
필드:
    - name: access_device
      description: Duo로 보호되는 리소스에 액세스하는 데 사용된 엔드포인트의 브라우저, 플러그인, 운영 체제 정보입니다. 값은 애플리케이션이 Duo의 인라인 브라우저 프롬프트 기능에 액세스했을 때만 표시됩니다.
      유형: object
      필드:
        - name: browser
          description: 액세스에 사용된 웹 브라우저입니다.
          유형: string
        - name: browser_version
          description: 브라우저 버전입니다.
          유형: string
        - name: flash_version
          description: 사용된 Flash 플러그인 버전입니다. 있으면 표시하고, 그렇지 않으면 "uninstalled"입니다.
          유형: string
        - name: hostname
          description: 호스트 이름이 있으면 표시하고, 없으면 "null"입니다.
          유형: string
          indicators:
            - hostname
        - name: ip
          description: 액세스 장치의 IP 주소가 있으면 표시하고, 없으면 "null"입니다.
          유형: string
          indicators:
            - ip
        - name: is_encryption_enabled
          description: Duo Device Health 앱이 감지한 디스크 암호화 상태를 보고합니다. 값은 "true", "false", 또는 "unknown" 중 하나입니다.
          유형: string
        - name: is_firewall_enabled
          description: Duo Device Health 앱이 감지한 방화벽 상태를 보고합니다. 값은 "true", "false", 또는 "unknown" 중 하나입니다.
          유형: string
        - name: is_password_set
          description: Duo Device Health 앱이 감지한 시스템 암호 상태를 보고합니다. 값은 "true", "false", 또는 "unknown" 중 하나입니다.
          유형: string
        - name: java_version
          description: 사용된 Java 플러그인 버전입니다. 있으면 표시하고, 그렇지 않으면 "uninstalled"입니다.
          유형: string
        - name: location
          description: 사용 가능한 경우 액세스 장치의 GeoIP 위치입니다. 응답에 모든 위치 매개변수가 포함되지 않을 수 있습니다.
          유형: object
          필드:
            - name: city
              description: 도시 이름입니다.
              유형: string
            - name: country
              description: 국가 코드입니다.
              유형: string
            - name: state
              description: 주, 카운티, 도, 또는 현입니다.
              유형: string
        - name: os
          description: 장치 운영 체제 이름입니다.
          유형: string
        - name: os_version
          description: 장치 운영 체제 버전입니다.
          유형: string
        - name: security_agents
          description: Duo Device Health 앱이 감지한 엔드포인트에 있는 보안 에이전트를 보고합니다.
          유형: array
          요소:
            type: json
    - name: alias
      description: 로그인에 사용된 사용자 이름 별칭입니다. 사용자가 사용자 이름 별칭 대신 자신의 사용자 이름으로 로그인한 경우 값이 없습니다.
      유형: string
      indicators:
        - username
    - name: application
      description: 액세스된 애플리케이션에 대한 정보입니다.
      유형: object
      필드:
        - name: key
          description: 애플리케이션의 integration_key입니다.
          유형: string
        - name: name
          description: 애플리케이션 이름입니다.
          유형: string
    - name: auth_device
      description: 인증을 승인하거나 거부하는 데 사용된 장치에 대한 정보입니다.
      유형: object
      필드:
        - name: ip
          description: 인증 장치의 IP 주소입니다.
          유형: string
          indicators:
            - ip
        - name: location
          description: 사용 가능한 경우 인증 장치의 GeoIP 위치입니다. 모든 위치 매개변수가 포함되지 않을 수 있습니다.
          유형: object
          필드:
            - name: city
              description: 도시 이름입니다.
              유형: string
            - name: country
              description: 국가 코드입니다.
              유형: string
            - name: state
              description: 주, 카운티, 도, 또는 현입니다.
              유형: string
        - name: name
          description: 인증 장치의 이름입니다.
          유형: string
    - name: email
      description: Duo에 알려진 경우 사용자의 이메일 주소이며, 그렇지 않으면 none입니다.
      유형: string
      indicators:
        - email
    - name: event_type
      description: '기록된 활동 유형입니다. 다음 중 하나입니다: "authentication" 또는 "enrollment".'
      유형: string
    - name: factor
      description: '인증 요소입니다. 다음 중 하나입니다: "phone_call", "passcode", "yubikey_passcode", "digipass_go_7_token", "hardware_token", "duo_mobile_passcode", "bypass_code", "sms_passcode", "sms_refresh", "duo_push", "u2f_token", "remembered_device", 또는 "trusted_network".'
      유형: string
    - name: isotimestamp
      필수: true
      description: 이벤트의 ISO8601 타임스탬프입니다.
      type: timestamp
      timeFormat: rfc3339
      isEventTime: true
    - name: ood_software
      description: 오래된 소프트웨어 때문에 인증이 거부된 경우, "Chrome", "Flash" 등 소프트웨어 이름이 표시됩니다. 인증이 성공했거나 거부 사유가 오래된 소프트웨어가 아닌 경우 값이 없습니다.
      유형: string
    - name: reason
      description: '인증 시도 결과의 사유를 제공합니다. result가 "SUCCESS"이면 다음 중 하나입니다: "allow_unenrolled_user", "allowed_by_policy", "allow_unenrolled_user_on_trusted_network", "bypass_user", "remembered_device", "trusted_location", "trusted_network", "user_approved", "valid_passcode". result가 "FAILURE"이면 다음 중 하나입니다: "anonymous_ip", "anomalous_push", "could_not_determine_if_endpoint_was_trusted", "denied_by_policy", "denied_network", "deny_unenrolled_user", "endpoint_is_not_in_management_system", "endpoint_failed_google_verification", "endpoint_is_not_trusted", "factor_restricted", "invalid_management_certificate_collection_state", "invalid_device", "invalid_passcode", "invalid_referring_hostname_provided", "location_restricted", "locked_out", "no_activated_duo_mobile_account", "no_disk_encryption", "no_duo_certificate_present", "touchid_disabled", "no_referring_hostname_provided", "no_response", "no_screen_lock", "no_web_referer_match", "out_of_date", "platform_restricted", "rooted_device", "software_restricted", "user_cancelled", "user_disabled", "user_mistake", "user_not_in_permitted_group", "user_provided_invalid_certificate", 또는 "version_restricted". result가 "ERROR"이면 "error"입니다. result가 "FRAUD"이면 "user_marked_fraud"입니다.'
      유형: string
    - name: result
      description: '인증 시도 결과입니다. 다음 중 하나입니다: "SUCCESS", "FAILURE", "ERROR", 또는 "FRAUD".'
      유형: string
    - name: timestamp
      description: 이벤트의 Unix 타임스탬프입니다.
      type: timestamp
      timeFormat: unix
    - name: txid
      필수: true
      description: 이벤트의 거래 ID입니다.
      유형: string
      indicators:
        - trace_id
    - name: user
      description: 인증 사용자에 대한 정보입니다.
      유형: object
      필드:
        - name: groups
          description: 사용자에 대한 Duo 그룹 멤버십 정보입니다.
          유형: array
          요소:
            유형: string
        - name: key
          description: 사용자의 user_id입니다.
          유형: string
        - name: name
          description: 사용자의 username입니다.
          유형: string
          indicators:
            - username
```

### Duo.OfflineEnrollment

Duo Authentication for Windows Logon 오프라인 등록 이벤트.

자세한 내용은 [Duo 오프라인 등록 로그 문서를 참조하세요.](https://duo.com/docs/adminapi#offline-enrollment-logs)

```yaml
schema: Duo.OfflineEnrollment
parser:
    native:
        name: Duo.OfflineEnrollment
description: Duo Authentication for Windows Logon 오프라인 등록 이벤트.
referenceURL: https://duo.com/docs/adminapi#offline-enrollment-logs
필드:
    - name: action
      필수: true
      description: 오프라인 등록 작업입니다. "o2fa_user_provisioned", "o2fa_user_deprovisioned", 또는 "o2fa_user_reenrolled" 중 하나입니다.
      유형: string
    - name: description
      description: 애플리케이션에서 보고한 Duo Windows Logon 클라이언트 시스템 정보입니다.
      유형: string
    - name: description_json
      description: 유효한 JSON인 경우 'Description' 필드를 JSON 객체로 표시합니다. 그렇지 않으면 null입니다.
      type: json
    - name: isotimestamp
      필수: true
      description: 이벤트의 ISO8601 타임스탬프입니다.
      type: timestamp
      timeFormat: rfc3339
      isEventTime: true
    - name: object
      필수: true
      description: Duo Windows Logon 통합의 이름입니다.
      유형: string
    - name: timestamp
      description: 이벤트의 Unix 타임스탬프입니다.
      type: timestamp
      timeFormat: unix
    - name: username
      필수: true
      description: Duo 사용자 이름입니다.
      유형: string
      indicators:
        - username
```

### Duo.Telephony

Duo 전화 로그 이벤트.

자세한 내용은 [Duo 전화 로그 문서를 참조하세요.](https://duo.com/docs/adminapi#telephony-logs)

```yaml
schema: Duo.Telephony
parser:
    native:
        name: Duo.Telephony
description: Duo 전화 로그 이벤트.
referenceURL: https://duo.com/docs/adminapi#telephony-logs
필드:
    - name: context
      description: '이 전화 이벤트가 시작된 방식입니다. 다음 중 하나입니다: "administrator login", "authentication", "enrollment", 또는 "verify".'
      유형: string
    - name: credits
      description: 이 이벤트에 사용된 전화 크레딧 수입니다.
      type: int
    - name: isotimestamp
      필수: true
      description: 이벤트의 ISO8601 타임스탬프입니다.
      type: timestamp
      timeFormat: rfc3339
      isEventTime: true
    - name: phone
      필수: true
      description: 이 이벤트를 시작한 전화번호입니다.
      유형: string
    - name: timestamp
      description: 이벤트의 Unix 타임스탬프입니다.
      type: timestamp
      timeFormat: unix
    - name: type
      필수: true
      description: 이벤트 유형입니다. "sms" 또는 "phone" 중 하나입니다.
      유형: string
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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/duo.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.
