> 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/wiz/api.md).

# Wiz API

## 개요

Panther는 가져올 수 있습니다 [Wiz](https://www.wiz.io/) [감사](#wiz.audit), [이슈](#wiz.issues), 및 [취약점 발견](#wiz.vulnerabilityfinding) 다음을 쿼리하여 로그를 [Wiz API](https://win.wiz.io/reference/prerequisites).

{% hint style="info" %}
다양한 유형의 Wiz 로그를 수집하려면 추가로 또는 대신 다음을 사용할 수 있습니다 [Wiz Webhook 통합](https://docs.panther.com/data-onboarding/supported-logs/wiz/webhook). 이 통합을 통해 제공되는 Wiz.Issues 이벤트와 다음을 통해 제공되는 Wiz.IssuesWebhook 이벤트는 [Wiz API 통합](https://docs.panther.com/data-onboarding/supported-logs/wiz/api) 약간 다릅니다.
{% endhint %}

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

### 사전 요구 사항

* 이 통합을 설정하는 사용자는 Wiz 테넌트에 액세스할 수 있어야 하며 서비스 계정을 생성할 수 있는 권한이 있는 Wiz 역할을 보유해야 합니다(예: `Global Admin`).

### 1단계: Wiz API 엔드포인트 URL 가져오기

Wiz GraphQL API에는 단일 엔드포인트가 있습니다(`https://api.<TENANT_DATA_CENTER>.app.wiz.io/graphql`), 여기서 `<TENANT_DATA_CENTER>` 는 테넌트가 위치한 Wiz 지역 데이터 센터를 나타냅니다. 예: `us1`, `us2`, `eu1` 또는 `eu2`. 엔드포인트는 수행 중인 작업과 관계없이 동일합니다.

GraphQL 엔드포인트를 가져오려면:

1. Wiz 콘솔의 오른쪽 상단에서 사용자 아이콘 > **사용자 설정** (또는 이 [직접 링크](https://app.wiz.io/user/profile)).
2. 왼쪽에서 다음을 클릭합니다. **테넌트** (또는 이 [직접 링크](https://app.wiz.io/user/tenant)).
3. 다음을 복사합니다. **API 엔드포인트 URL** 을 복사해 안전한 위치에 저장하세요. 다음 단계에서 필요합니다.

### 2단계: Wiz에서 서비스 계정 만들기

1. Wiz 대시보드에서 다음으로 이동합니다. **설정** > **액세스 관리** > **서비스 계정**.
2. 클릭합니다 **서비스 계정 추가**.
3. 다음 **새 서비스 계정** 양식에서 다음 필드를 채웁니다:
   * **이름**: 서비스 계정에 대한 설명이 포함된 이름을 입력합니다. 예: `Panther Integration`.
   * **유형**: 선택 **사용자 지정 통합(GraphQL API)**.
   * **프로젝트** (선택 사항): 이 서비스 계정이 액세스할 하나 이상의 프로젝트를 선택합니다.
     * 하나 이상의 프로젝트를 선택하면 다음을 쿼리할 수 없습니다 [감사](#wiz.audit) 로그.
   * **API 범위**:
     * 선택 **read:resources**.
     * 다음에 나열된 범위(들)를 선택합니다. **서비스 계정에 필요한 API 범위** 아래 표에서 Panther로 수집할 Wiz 로그 유형에 해당하는 범위를 선택하세요.
4. 클릭합니다 **서비스 계정 추가**.
5. 다음을 복사하고 **Client Secret**, 나중 단계에서 필요하므로 안전한 위치에 저장하세요. 이 단계 이후에는 이 값을 볼 수 없습니다.
6. 다음을 복사하고 **Client ID**, 나중 단계에서 필요하므로 안전한 위치에 저장하세요.

#### 서비스 계정에 필요한 API 범위

<table><thead><tr><th width="199">로그 유형</th><th width="264">쿼리에 필요한 범위</th><th>참고</th></tr></thead><tbody><tr><td><a href="#wiz.audit">감사</a></td><td>admin:audit</td><td>이 권한은 하나 이상의 <strong>프로젝트</strong> 서비스 계정의</td></tr><tr><td><a href="#wiz.issues">이슈</a></td><td>read:issues</td><td></td></tr><tr><td><a href="#wiz.vulnerabilityfinding">VulnerabilityFinding</a></td><td>read:vulnerabilities</td><td></td></tr></tbody></table>

### 3단계: Panther에서 새 Wiz 로그 소스 만들기

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

   <figure><img src="/files/bf333b6df22e900af4d9dee5751e23799ddd2dc2" alt="A page in the Panther console with the trail Log Sources > Add New Source is shown, with a slide-out panel expanded with the title Wiz. An arrow is drawn to a &#x22;Start Setup&#x22; button."><figcaption></figcaption></figure>
5. 다음 페이지에서 **구성** 화면에서 양식을 채웁니다:
   * **이름**: 소스에 대한 설명이 포함된 이름을 입력합니다. 예: `내 Wiz 로그`.
   * **프로젝트 ID** (선택 사항): 로그를 가져올 프로젝트의 ID를 입력합니다. 이 필드를 비워 두면 Panther는 모든 프로젝트의 로그를 가져옵니다. Wiz 콘솔에서 특정 프로젝트의 ID를 찾으려면:
     1. 클릭합니다 **설정** > **프로젝트**.
     2. 프로젝트 행의 오른쪽에서 점 3개 아이콘 > **프로젝트 ID**. ID가 클립보드에 복사됩니다.
   * **모니터링할 로그 유형을 선택합니다**: 모든 Wiz 로그 유형이 미리 채워집니다.
6. 클릭합니다 **설정**.
7. 다음 페이지에서 **자격 증명 설정** 페이지에서 양식을 작성하세요:
   * **토큰 URL**: Wiz API 토큰 URL을 입력합니다. 이 값은 Wiz 계정의 ID 공급자에 따라 다릅니다:
     * Amazon Cognito: 입력 `https://auth.app.wiz.io/oauth/token`.
     * Auth0: 입력 `https://auth.wiz.io/oauth/token`.
       * Wiz는 2022년 12월에 ID 공급자로서의 Auth0 지원을 종료했습니다.
   * **API 엔드포인트**: 다음을 입력하세요. **API 엔드포인트 URL** Wiz에서 가져온
   * **Client ID**: 다음을 입력하세요. **Client ID** Wiz에서 생성한
   * **클라이언트 시크릿:** 다음을 입력합니다 **Client Secret** Wiz에서 생성한
8. 클릭합니다 **설정**. 성공 화면으로 이동합니다:

   <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>

## Panther가 관리하는 디택션

참고 [Panther가 관리하는](/ko/detections/panther-managed.md) Wiz용 룰 [panther-analysis GitHub 저장소](https://github.com/panther-labs/panther-analysis/tree/main/rules/wiz_rules).

## 지원되는 로그 유형

### Wiz.Audit

Audit 로그는 Wiz에서의 로그인, 로그아웃, 사용자 업데이트와 같은 주요 이벤트를 기록합니다. Audit 로그는 주로 의심스러운 활동을 조사하거나 오류를 진단 및 문제 해결하는 데 사용됩니다.

참조: <https://win.wiz.io/reference/audit-log>

```yaml
스키마: Wiz.Audit
설명: Audit 로그는 Wiz에서의 로그인, 로그아웃, 사용자 업데이트와 같은 주요 이벤트를 기록합니다. Audit 로그는 주로 의심스러운 활동을 조사하거나 오류를 진단 및 문제 해결하는 데 사용됩니다.
참조 URL: https://win.wiz.io/reference/audit-log
필드:
    - 이름: id
      필수: true
      설명: 감사 로그 항목의 고유 식별자.
      유형: string
    - 이름: action
      필수: true
      설명: 수행된 작업.
      유형: string
    - name: requestId
      설명: 요청의 고유 식별자.
      유형: string
    - 이름: status
      설명: 감사 로그 이벤트의 상태.
      유형: string
    - 이름: timestamp
      필수: true
      설명: 이벤트의 타임스탬프.
      유형: timestamp
      시간 형식:
        - rfc3339
      이벤트 시간 여부: true
    - 이름: actionParameters
      설명: 작업과 관련된 매개변수.
      유형: json
    - name: userAgent
      설명: 사용자 에이전트 문자열.
      유형: string
    - 이름: sourceIP
      설명: 소스 IP 주소.
      유형: string
      지표:
        - ip
    - 이름: serviceAccount
      설명: 작업과 연결된 서비스 계정.
      유형: object
      필드:
        - 이름: id
          필수: true
          설명: 서비스 계정의 ID.
          유형: string
          지표:
            - actor_id
        - 이름: name
          설명: 서비스 계정의 이름.
          유형: string
    - 이름: user
      설명: 해당하는 경우 작업과 연결된 사용자.
      유형: object
      필드:
        - 이름: id
          필수: true
          설명: 사용자의 ID.
          유형: string
          지표:
            - actor_id
        - 이름: name
          설명: 사용자의 이름.
          유형: string
          지표:
            - username
```

### Wiz.Issues

Issues 로그는 취약점 발견 및 보안 사고와 같이 이슈와 관련된 Wiz의 주요 이벤트를 기록합니다. 이는 보안 취약점과 사고를 추적, 관리 및 해결하는 데 사용됩니다.

참조: <https://win.wiz.io/reference/issues-query>

```yaml
스키마: Wiz.Issues
설명: Issues 로그는 취약점 발견 및 보안 사고와 같이 이슈와 관련된 Wiz의 주요 이벤트를 기록합니다. 이는 보안 취약점과 사고를 추적, 관리 및 해결하는 데 사용됩니다.
참조 URL: https://win.wiz.io/reference/issues-query
필드:
    - 이름: id
      필수: true
      설명: 이슈의 고유 식별자.
      유형: string
    - 이름: sourceRule
      설명: 이슈의 소스 룰.
      유형: json
    - 이름: createdAt
      필수: true
      설명: 이슈의 생성 타임스탬프.
      유형: timestamp
    - 이름: updatedAt
      설명: 이슈의 마지막 업데이트 타임스탬프.
      유형: timestamp
    - 이름: dueAt
      설명: 이슈의 기한 타임스탬프.
      유형: timestamp
    - 이름: type
      설명: 이슈의 유형.
      유형: string
    - 이름: resolvedAt
      설명: 이슈의 해결 타임스탬프.
      유형: timestamp
    - 이름: statusChangedAt
      설명: 이슈의 상태가 변경된 타임스탬프.
      유형: timestamp
    - 이름: projects
      설명: 이슈와 연결된 프로젝트.
      유형: array
      요소:
        유형: object
        필드:
            - 이름: id
              설명: 프로젝트의 고유 식별자.
              유형: string
            - 이름: name
              설명: 프로젝트 이름.
              유형: string
            - 이름: slug
              설명: 프로젝트 슬러그.
              유형: string
            - 이름: businessUnit
              설명: 프로젝트의 비즈니스 단위.
              유형: string
            - 이름: riskProfile
              설명: 프로젝트의 위험 프로필.
              유형: json
    - 이름: status
      설명: 이슈의 상태.
      유형: string
    - 이름: severity
      설명: 이슈의 심각도.
      유형: string
    - 이름: entitySnapshot
      설명: 이슈와 관련된 엔터티의 스냅샷.
      유형: object
      필드:
        - 이름: id
          설명: 엔터티 스냅샷의 고유 식별자.
          유형: string
        - 이름: type
          설명: 엔터티 스냅샷의 유형.
          유형: string
        - 이름: nativeType
          설명: 엔터티 스냅샷의 네이티브 유형.
          유형: string
        - 이름: name
          설명: 엔터티 스냅샷의 이름.
          유형: string
        - 이름: status
          설명: 엔터티 스냅샷의 상태.
          유형: string
        - 이름: cloudPlatform
          설명: 엔터티 스냅샷의 클라우드 플랫폼.
          유형: string
        - 이름: cloudProviderURL
          설명: 엔터티 스냅샷의 클라우드 제공업체 URL.
          유형: string
        - 이름: providerId
          설명: 엔터티 스냅샷의 제공업체 ID.
          유형: string
        - 이름: region
          설명: 엔터티 스냅샷의 리전.
          유형: string
        - 이름: resourceGroupExternalId
          설명: 리소스 그룹의 외부 ID.
          유형: string
        - 이름: subscriptionExternalId
          설명: 구독의 외부 ID.
          유형: string
        - 이름: subscriptionName
          설명: 구독 이름.
          유형: string
        - 이름: subscriptionTags
          설명: 구독의 태그.
          유형: json
        - 이름: tags
          설명: 엔터티 스냅샷의 태그.
          유형: json
        - 이름: externalId
          설명: 엔터티 스냅샷의 외부 ID.
          유형: string
    - 이름: serviceTickets
      설명: 이슈와 연결된 서비스 티켓.
      유형: json
    - 이름: notes
      설명: 이슈와 관련된 추가 메모.
      유형: json
```

### Wiz.VulnerabilityFinding

Vulnerability Finding 로그는 Wiz에서 탐지된 보안 취약점에 대한 정보를 기록하며, 취약점, 영향을 받는 자산, 해결 단계에 대한 세부 정보를 포함합니다.

참조: <https://win.wiz.io/reference/vulnerability-finding>

```yaml
스키마: Wiz.VulnerabilityFinding
설명: Vulnerability Finding 로그는 Wiz에서 탐지된 보안 취약점에 대한 정보를 기록하며, 취약점, 영향을 받는 자산, 해결 단계에 대한 세부 정보를 포함합니다.
참조 URL: https://win.wiz.io/reference/vulnerability-finding
필드:
    - 이름: id
      필수: true
      설명: 취약점 발견의 고유 식별자.
      유형: string
    - 이름: portalUrl
      설명: 취약점 발견의 포털 URL.
      유형: string
      지표:
        - url
    - 이름: name
      설명: 취약점 이름.
      유형: string
    - 이름: CVEDescription
      설명: 취약점의 CVE 설명.
      유형: string
    - 이름: CVSSSeverity
      설명: 취약점의 CVSS 심각도.
      유형: string
    - 이름: score
      설명: 취약점 점수.
      유형: float
    - 이름: exploitabilityScore
      설명: 취약점의 악용 가능성 점수.
      유형: float
    - 이름: impactScore
      설명: 취약점의 영향 점수.
      유형: float
    - 이름: dataSourceName
      설명: 취약점 발견의 데이터 소스 이름.
      유형: string
    - 이름: hasExploit
      설명: 취약점에 익스플로잇이 있는지 나타냅니다.
      유형: boolean
    - 이름: hasCisaKevExploit
      설명: 취약점에 CISA/KEV 익스플로잇이 있는지 나타냅니다.
      유형: boolean
    - 이름: status
      설명: 취약점 발견의 상태.
      유형: string
    - 이름: vendorSeverity
      설명: 취약점의 공급업체 심각도.
      유형: string
    - 이름: firstDetectedAt
      설명: 취약점이 처음 탐지된 타임스탬프.
      유형: timestamp
      시간 형식:
        - rfc3339
    - 이름: lastDetectedAt
      설명: 취약점이 마지막으로 탐지된 타임스탬프.
      유형: timestamp
      시간 형식:
        - rfc3339
    - 이름: resolvedAt
      설명: 취약점이 해결된 타임스탬프.
      유형: timestamp
    - 이름: description
      설명: 취약점 설명.
      유형: string
    - 이름: remediation
      설명: 취약점의 해결 단계.
      유형: string
    - 이름: detailedName
      설명: 취약점의 상세 이름.
      유형: string
    - 이름: version
      설명: 취약점의 영향을 받는 버전.
      유형: string
    - 이름: fixedVersion
      설명: 취약점의 수정된 버전.
      유형: string
    - 이름: detectionMethod
      설명: 취약점 감지에 사용된 방법.
      유형: string
    - 이름: link
      설명: 취약점과 관련된 링크.
      유형: string
      지표:
        - url
    - 이름: locationPath
      설명: 취약점의 위치 경로.
      유형: string
    - 이름: resolutionReason
      설명: 취약점을 해결한 이유.
      유형: string
    - 이름: epssSeverity
      설명: 취약점의 EPSS 심각도.
      유형: string
    - 이름: epssPercentile
      설명: 취약점의 EPSS 백분위.
      유형: float
    - 이름: epssProbability
      설명: 취약점의 EPSS 확률.
      유형: float
    - 이름: validatedInRuntime
      설명: 취약점이 런타임에서 검증되었는지 나타냅니다.
      유형: string
    - 이름: layerMetadata
      설명: 취약점의 레이어 메타데이터.
      유형: json
    - 이름: projects
      설명: 취약점 발견과 연결된 프로젝트.
      유형: array
      요소:
        유형: object
        필드:
            - 이름: id
              설명: 프로젝트의 고유 식별자.
              유형: string
            - 이름: name
              설명: 프로젝트 이름.
              유형: string
            - 이름: slug
              설명: 프로젝트 슬러그.
              유형: string
            - 이름: businessUnit
              설명: 프로젝트의 비즈니스 단위.
              유형: string
            - 이름: riskProfile
              설명: 프로젝트의 위험 프로필.
              유형: json
    - 이름: ignoreRules
      설명: 취약점에 대한 무시 룰.
      유형: json
    - 이름: vulnerableAsset
      설명: 취약점 발견과 연결된 취약한 자산.
      유형: object
      필드:
        - 이름: id
          설명: 취약한 자산의 고유 식별자.
          유형: string
        - 이름: type
          설명: 취약한 자산의 유형.
          유형: string
        - 이름: name
          설명: 취약한 자산의 이름.
          유형: string
        - 이름: region
          설명: 취약한 자산의 리전.
          유형: string
        - 이름: providerUniqueId
          설명: 제공업체의 고유 식별자.
          유형: string
        - 이름: cloudProviderURL
          설명: 취약한 자산의 클라우드 제공업체 URL.
          유형: string
          지표:
            - url
        - 이름: cloudPlatform
          설명: 취약한 자산의 클라우드 플랫폼.
          유형: string
        - 이름: status
          설명: 취약한 자산의 상태.
          유형: string
        - 이름: subscriptionName
          설명: 구독 이름.
          유형: string
        - 이름: subscriptionExternalId
          설명: 구독의 외부 ID.
          유형: string
        - 이름: subscriptionId
          설명: 구독의 ID.
          유형: string
        - 이름: tags
          설명: 취약한 자산의 태그.
          유형: json
        - 이름: hasLimitedInternetExposure
          설명: 취약한 자산이 제한된 인터넷 노출을 가지고 있는지 나타냅니다.
          유형: boolean
        - 이름: hasWideInternetExposure
          설명: 취약한 자산이 광범위한 인터넷 노출을 가지고 있는지 나타냅니다.
          유형: boolean
        - 이름: isAccessibleFromVPN
          설명: 취약한 자산이 VPN에서 접근 가능한지 나타냅니다.
          유형: boolean
        - 이름: isAccessibleFromOtherVnets
          설명: 취약한 자산이 다른 VNet에서 접근 가능한지 나타냅니다.
          유형: boolean
        - 이름: isAccessibleFromOtherSubscriptions
          설명: 취약한 자산이 다른 구독에서 접근 가능한지 나타냅니다.
          유형: boolean
        - 이름: operatingSystem
          설명: 취약한 자산의 운영 체제.
          유형: string
        - 이름: ipAddresses
          설명: 취약한 자산의 IP 주소.
          유형: array
          요소:
            유형: string
            지표:
                - ip
```


---

# 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, and the optional `goal` query parameter:

```
GET https://docs.panther.com/ko/data-onboarding/supported-logs/wiz/api.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
