# Zoom 로그

## 개요

Panther는 다양한 Zoom API 엔드포인트를 쿼리하여 Zoom 운영 및 활동 로그를 가져올 수 있습니다. Panther는 특히 다음 Zoom 이벤트를 모니터링할 수 있습니다:

* 계정 및 그룹 설정 변경
* 사용자의 역할 및 라이선스 할당 변경
* 청구(Billing) 하의 구독 변경
* SSO 구성에 대한 변경사항(귀하의 SSO 및 SAML 매핑 구성에 의해 이루어진 변경사항 포함)

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

이 통합을 설정하려면 Zoom 계정에서 OAuth2 앱을 생성하고 Panther 콘솔에서 Zoom을 로그 소스로 구성합니다.

### 사전 요구 사항

* 귀하의 Zoom 사용자 계정은 관리자(Admin) 역할을 가지고 있습니다.

{% hint style="warning" %}
이 Zoom 사용자가 조직을 떠나면 이 통합이 중단될 수 있습니다. 대신 Zoom에서 공유 서비스 계정을 사용하는 것이 좋을 수 있습니다.
{% endhint %}

* 귀하의 Zoom 사용자 계정은 다음 권한을 가지고 있습니다(다음에서 확인할 수 있습니다 [Zoom 역할 페이지](https://zoom.us/role#/)—클릭 **관리자** 보려면 **역할 설정**):
  * 사용자를 사용할 것이며, `사용량 보고서` 보기 권한
  * 사용자를 사용할 것이며, `관리자 활동 로그` 보기 권한
    * 이는 다음을 가져오는 경우 필요합니다 [Zoom.Operation](#zoom.operation) logs
  * 사용자를 사용할 것이며, `로그인/로그아웃` 보기 권한
    * 이는 다음을 가져오는 경우 필요합니다 [Zoom.Activity](#zoom.activity) logs\
      ![The role permissions screen of the Zoom Console is shown. Various permissions are shown with checkboxes; Usage reports, Sign In/Sign Out, and Admin Activity Logs are all selected.](https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-0a70bf8824cbe2f0f584758114f3ab71990c982b%2Fimage.png?alt=media)

### 1단계: Panther에서 새 Zoom 로그 소스 생성

1. Panther 콘솔의 왼쪽 탐색 창에서 **구성** > **로그 소스**.
2. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. **새로 만들기.**
3. 선택하세요 **Zoom** 사용 가능한 로그 소스 목록에서. 클릭하세요 **설정 시작**.
4. 다음 화면에서 소스에 대해 설명적인 이름을 입력합니다. 예: `내 Zoom 로그`.
5. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. **설정**.
6. Panther에서 Redirect URL을 복사하여 안전한 장소에 저장하십시오. 이후 Zoom에서 OAuth 앱을 생성할 때 이 URL이 필요합니다.
   * 다음 단계에서 추가 구성을 완료해야 하므로 이 브라우저 창을 열어 두십시오.

### 2단계: Zoom에서 새 OAuth 앱 생성

추가 참고는 다음을 참조하십시오: [OAuth 앱 생성 방법에 대한 Zoom 문서](https://developers.zoom.us/docs/integrations/create/).

1. 콘솔로. [Zoom 앱 마켓플레이스](https://marketplace.zoom.us/).
2. 페이지 오른쪽 상단에서 **개발(Develop)** 드롭다운을 클릭한 다음 **앱 빌드(Build App)를 선택합니다**.
3. 일반 구성 **어떤 종류의 앱을 생성하시겠습니까** 팝업에서, 선택 **일반 앱(General App)**&#xC744; 클릭한 다음 **Python 함수를 입력한 다음**.
4. 페이지에서 **기본 정보** 페이지:
   1. 에서 **앱이 어떻게 관리되는지 선택하십시오**SNS 주제 **관리자 관리(Admin-managed)**&#xC744; 클릭한 다음 **"Resource": "\<secret ARN>"**.\
      ![A header reading "Select how the app is managed" is above two radio buttons with the following labels: Admin-managed and User-managed. At the bottom are "Save" and "Cancel" buttons.](https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-7ed9736433ed2d4a582803d0ca03ff2e75674b5e%2Fimage.png?alt=media)
   2. 다음으로 스크롤합니다 **OAuth 정보** 섹션. 다음에서 **OAuth 리다이렉트 URL** 필드에 1단계에서 Panther 콘솔에서 복사한 Redirect URL을 붙여넣으십시오.
      * 일반 구성 **OAuth 허용 목록** 필드에서 Redirect URL이 포함되어 있는지 확인하십시오. 포함되어 있지 않다면 목록에 추가하십시오.
   3. 다음 값을 복사하세요 **클라이언트 ID** 와 **클라이언트 시크릿** 앱에 대한 값을 얻어 안전한 장소에 저장하십시오. Panther 콘솔에서 설정을 마무리할 때 이 값들이 필요합니다.
5. 콘솔로. **범위** 페이지를 참조하세요.
   1. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. **권한(Scopes) 추가**.
   2. 선택하세요 **Reports** > **운영 로그 보기** 와 **사용자 로그인/로그아웃 활동 로그 보기**.
   3. 수집하려는 로그에 따라 다음 권한을 추가하십시오:
      * `report:read:operation_logs:admin`
        * 이는 Zoom 운영 로그를 가져오는 경우 필요합니다.
      * `report:read:user_activities:admin`
        * 이는 Zoom 활동 로그를 가져오는 경우 필요합니다.
   4. 권한을 추가한 후 클릭하십시오 **를 사용할 수 있습니다.**.\
      ![](https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2FrNFp9QcfiUi2L61djpyt%2Fimage.png?alt=media\&token=6fdcd264-acde-4fb9-ae77-c08334bb219e)

{% hint style="info" %}
이들은 [세분화된 권한(그라뉼러 스코프)](https://developers.zoom.us/docs/integrations/oauth-scopes-granular/)입니다. 2024년 3월 21일 이전에 Zoom 앱을 생성했다면, 아마도 [클래식 권한(클래식 스코프)](https://developers.zoom.us/docs/integrations/oauth-scopes/)을 사용했을 것입니다. Panther는 세분화된 권한과 클래식 권한 모두로 생성된 Zoom 앱을 지원합니다.
{% endhint %}

6. 콘솔로. **로컬 테스트** 페이지를 참조하세요.
   1. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. **앱 목록 페이지 미리보기**.
   2. 앱 페이지로 리디렉션되면 클릭하십시오 **승인(Approve)**.
   3. 일반 구성 **앱 승인 및 권한 부여** 팝업에서 이 애플리케이션에 액세스할 특정 사용자를 지정하십시오.\
      ![](https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2F2mYXNf5zPWk4ZLEnOJiq%2FScreenshot%202026-01-13%20at%203.11.57%E2%80%AFPM.png?alt=media\&token=6f89f7f4-43cd-41d3-ad36-b23297d11357)
   4. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. **리디렉트 URL**을(를). (비-JSON 로그를 업로드했고 **Panther AI가 활성화된 경우**.
7. Panther 콘솔로 다시 이동하여 최종 설정을 완료하십시오.

### 3단계: Panther에서 설정 마무리

1. Panther 콘솔의 **자격 증명(Credentials)** 페이지에서, 다음을 입력하십시오 **클라이언트 ID** 및 **클라이언트 시크릿** Zoom에서 얻은 값을 입력하십시오.
2. 에서 **사용할 권한 유형 선택**, 선택 **세분화된 권한 사용(Use granular scopes)**.
3. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. **Panther 콘솔에서 필드에 값을 입력하세요:**
4. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. **액세스 허용** 을 선택하여 Panther가 귀하의 Zoom 로그에 접근하도록 허용합니다.
   * 위의 사전 요구사항(Prerequisites) 섹션에 설명된 역할과 권한을 가진 Zoom 계정으로 로그인되어 있어야 합니다. [위의 사전 요구사항 섹션](#prerequisites).\
     ![](https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-1b9bee89da843f918daf926f2e91da8ff8c9ae4e%2Fimage.png?alt=media)
5. 3단계: 소스 설정 완료

   <div align="left"><figure><img src="https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-e55cedf82c6a6adc66ec5c14ebdcb164c3b1dcca%2FScreenshot%202023-08-03%20at%204.33.30%20PM.png?alt=media" 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></div>

   * 성공 화면으로 이동됩니다: [선택적으로 하나 이상의](https://docs.panther.com/detections/panther-managed/packs).
   * 사용자를 사용할 것이며, **가 활성화될 수 있습니다** "이벤트가 처리되지 않을 때 알러트를 트리거" **설정의 기본값은**예

     <figure><img src="https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-c48119abd559990173004bde99ff4907fdd2ded2%2FScreenshot%202023-08-03%20at%204.26.54%20PM.png?alt=media" 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 관리](https://docs.panther.com/ko/detections/panther-managed) 에서 Zoom에 대한 룰(규칙). [panther-analysis GitHub 리포지토리](https://github.com/panther-labs/panther-analysis/tree/main/rules/zoom_operation_rules).

## 지원되는 로그 유형

### Zoom.Activity

Zoom 계정에 대한 사용자의 로그인/로그아웃 활동 로그.

참고: [로그인/로그아웃 보고서에 대한 Zoom 문서입니다.](https://developers.zoom.us/docs/api/rest/reference/zoom-api/methods/#operation/reportSignInSignOutActivities)

```yaml
스키마: Zoom.Activity
파서:
    네이티브:
        이름: Zoom.Activity
설명: Zoom 계정에 속한 사용자의 로그인/로그아웃 활동 로그
참조 URL: https://developers.zoom.us/docs/api/rest/reference/zoom-api/methods/#operation/reportSignInSignOutActivities
필드:
    - 이름: email
      required: true
      설명: 활동에 사용된 사용자의 이메일 주소.
      type: string
      지표:
        - 이메일
    - 이름: time
      required: true
      설명: 사용자 활동의 타임스탬프.
      type: timestamp
      시간 형식: rfc3339
      isEventTime: true
    - 이름: type
      설명: '사용자 활동 유형: 로그인/로그아웃'
      type: string
    - 이름: ip_address
      설명: Zoom에 액세스하는 데 사용된 장치의 IP 주소.
      type: string
      지표:
        - ip
    - 이름: client_type
      설명: 활동이 수행된 클라이언트 인터페이스 유형.
      type: string
    - name: version
      설명: 사용자의 Zoom 클라이언트 버전.
      type: string
```

### Zoom.Operation

이 보고서는 새 사용자 추가, 계정 설정 변경, 녹음 삭제와 같은 관리자 및 사용자 활동을 감사를 할 수 있도록 합니다.

참고: [운영 로그 보고서에 대한 Zoom 문서입니다.](https://developers.zoom.us/docs/api/rest/reference/zoom-api/methods/#operation/reportOperationLogs)

```yaml
스키마: Zoom.Operation
파서:
    네이티브:
        이름: Zoom.Operation
설명: 이 보고서는 새 사용자 추가, 계정 설정 변경, 녹음 삭제와 같은 관리자 및 사용자 활동을 감사할 수 있도록 합니다
참조 URL: https://developers.zoom.us/docs/api/rest/reference/zoom-api/methods/#operation/reportOperationLogs
필드:
    - 이름: time
      required: true
      설명: 작업이 수행된 시각.
      type: timestamp
      시간 형식: rfc3339
      isEventTime: true
    - 이름: operator
      required: true
      설명: 작업을 수행한 사용자.
      type: string
      지표:
        - 이메일
    - 이름: category_type
      required: true
      설명: 작업 카테고리 유형
      type: string
    - 이름: action
      설명: 동작 설명
      type: string
    - 이름: operation_detail
      설명: 작업 상세
      type: string
```
