# 디택션 팩

## 개요

디텍션 팩(간단히 팩이라고도 함)은 논리적으로 그룹화하는 데 사용됩니다 [Panther 관리 디텍션](https://docs.panther.com/ko/detections/panther-managed)뿐만 아니라 Panther 콘솔에서 디텍션 업데이트를 활성화합니다. 팩은 [`panther-labs/panther-analysis`](https://github.com/panther-labs/panther-analysis/tree/master/packs) 오픈 소스 리포지토리에서 정의됩니다.

단일 팩은 임의의 수의 디텍션을 그룹화할 수 있습니다, [데이터 모델](https://docs.panther.com/ko/detections/rules/python/data-models), [글로벌 헬퍼](https://docs.panther.com/ko/detections/rules/python/globals), [룩업 테이블](https://docs.panther.com/ko/enrichment)및 [저장된 검색](https://docs.panther.com/ko/search/scheduled-searches). [`Panther 유니버설 디텍션`](https://github.com/panther-labs/panther-analysis/blob/main/packs/standard_ruleset.yml)예를 들어, 특정 데이터 모델에 의존하는 모든 룰과 그 모든 종속성을 그룹화합니다.

디텍션 팩은 버전 관리되며 Panther는 해당 팩에 포함된 디텍션의 핵심 디텍션 로직 업데이트와 함께 주기적으로 새 버전을 릴리스합니다. 팩 업데이트가 사용 가능할 때 팩 목록 페이지의 팩 타일(당신의 Panther 콘솔의 **디텍션 > 팩**)에 표시됩니다 `업데이트 사용 가능` 레이블이 표시됩니다.

활성화된 디텍션 팩의 일부인 디텍션에는 다음 라벨이 붙습니다 `관리됨`팩의 일부가 아닌 디텍션에는 다음 라벨이 붙습니다 `비관리`.

{% hint style="warning" %}
참고: Panther 콘솔을 통한 디텍션 관리가 **Enterprise 조직** 권장됩니다. 이미 Git 기반 워크플로우를 사용해 Panther Analysis Tool로 디텍션을 관리하고 업로드하고 있는 경우 특히 그렇습니다. 두 가지 방법으로 동시에 디텍션을 관리하면 예기치 않은 동작이 발생할 수 있습니&#xB2E4;**.**

다음을 사용할 수 있습니다 [개발자 워크플로우 설정](https://docs.panther.com/ko/system-configuration#developer-workflow) UI에서 팩을 켜는 기능을 비활성화하려면.
{% endhint %}

### Panther 관리형 디텍션 팩

Panther는 기본적으로 여러 디텍션 팩을 제공합니다. 특정 로그 소스와 관련된 모든 [Panther 관리 디텍션](https://docs.panther.com/ko/detections/panther-managed) 를 그룹화하는 팩과 특정 초점(예: 통합 데이터 모델을 활용하는 일반 규칙 또는 AWS에 대한 핵심 디텍션 집합)으로 그룹화된 디텍션 팩이 있습니다. 몇 가지 인기 있는 예시는 다음과 같습니다:

<table data-header-hidden><thead><tr><th width="154.96371701910277">표시 이름</th><th>설명</th></tr></thead><tbody><tr><td><strong>표시 이름</strong></td><td><strong>설명</strong></td></tr><tr><td><a href="https://github.com/panther-labs/panther-analysis/blob/19a9e47e347f711df173bcfe07b7db9cf003ed7e/packs/standard_ruleset.yml">Panther 유니버설 디텍션</a></td><td>이 팩은 통합 데이터 모델을 활용하는 표준 룰을 그룹화합니다</td></tr><tr><td><a href="https://github.com/panther-labs/panther-analysis/blob/19a9e47e347f711df173bcfe07b7db9cf003ed7e/packs/aws.yml">Panther Core AWS 팩</a></td><td>AWS 환경과 관련된 가장 중요하고 가치 높은 디텍션 그룹</td></tr><tr><td><a href="https://github.com/panther-labs/panther-analysis/blob/21e1b9ea61baf31feec57328f5dd216095162e05/packs/okta.yml">Panther Okta 팩</a></td><td>Okta에 대한 Panther가 생성한 모든 디텍션 그룹</td></tr></tbody></table>

## 디텍션 팩 사용 방법

### 디텍션 팩 보기

탐색 표시줄에서 Detections를 클릭한 다음 **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-a823c19d2dd2ee1fb4592df10a4e25208c381e79%2FScreenshot%202025-08-28%20at%202.54.49%E2%80%AFPM.png?alt=media" alt="On a page titled &#x22;Packs,&#x22; a &#x22;Packs&#x22; tab is highlighted. In a search bar, &#x22;Panther&#x22; has been entered and two results are shown: Panther AWS CIS Pack and Panther Core AWS Pack."><figcaption></figcaption></figure>

을 클릭하면 Panther 콘솔에서 Panther 제공 디텍션 팩 목록을 볼 수 있습니다. 팩을 클릭하면 설명, 활성화 상태, 현재 활성화된 버전, 그리고 해당 팩에 포함된 엔티티(예: 디텍션, [데이터 모델](https://docs.panther.com/ko/detections/rules/python/data-models), [글로벌 헬퍼](https://docs.panther.com/ko/detections/rules/python/globals)및 [저장된 검색](https://docs.panther.com/ko/search/scheduled-searches))를 포함한 세부 정보를 볼 수 있습니다.

<figure><img src="https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-ebdcb7f1b4045d37c8515b775528b56fb03c7485%2FScreenshot%202025-08-28%20at%202.56.42%E2%80%AFPM.png?alt=media" alt="On a page titled &#x22;Panther Core AWS Pack,&#x22; there are two tiles titled &#x22;A CloudTrail Was Created or Updated&#x22; and &#x22;Account Security Configuration Changed.&#x22; An &#x22;Enabled&#x22; toggle in the upper-right corner is set to ON."><figcaption></figcaption></figure>

### 디텍션 팩 활성화 및 비활성화

팩은 Panther 콘솔에서 활성화하거나 비활성화할 수 있습니다. 팩을 활성화하면 해당 팩에 포함된 각 디텍션이 활성화됩니다. 활성화된 팩 내에서 하나 이상의 디텍션을 전체 팩을 비활성화하지 않고(개별적으로) 비활성화할 수 있습니다.

팩이 비활성화되어 있지만 그 안에 포함된 디텍션이 활성화되어 있다면 해당 디텍션들은 정상적으로 작동합니다(즉, 팩이 비활성화된 것으로 인해 영향을 받지 않습니다).

비활성화된 디텍션이 있는 팩을 업데이트하면 디텍션은 업데이트되지만 비활성화 상태는 유지됩니다.

팩을 활성화하거나 비활성화하려면:

1. Panther 콘솔의 왼쪽 탐색 창에서 **디텍션**.
2. 을 클릭하세요 **Packs** 탭을 클릭하세요.
3. 활성화하거나 비활성화하려는 팩을 찾습니다.
4. 해당 팩 타일의 오른쪽에 있는 **사용** 슬라이더를 켜거나 끄세요.

<figure><img src="https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-deea500c0b96c02cb9e6da1bac408e05721c325d%2FScreenshot%202025-08-28%20at%202.59.00%E2%80%AFPM.png?alt=media" alt="A rectangular tile is shown titled &#x22;Panther Core AWS Pack.&#x22; Its &#x22;Enabled&#x22; slider is circled."><figcaption></figcaption></figure>

사용자를 사용할 것이며, **사용** 슬라이더는 팩 상세 페이지에도 표시됩니다:

<figure><img src="https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-dd080a29407744197b5ab680e1962b3ef7d5d52f%2FScreenshot%202025-08-28%20at%202.56.42%E2%80%AFPM.png?alt=media" alt="On a page titled &#x22;Panther Core AWS Pack,&#x22; there are two tiles titled &#x22;A CloudTrail Was Created or Updated&#x22; and &#x22;Account Security Configuration Changed.&#x22; An &#x22;Enabled&#x22; toggle in the upper-right corner is set to ON."><figcaption></figcaption></figure>

### 디텍션 팩 업데이트 또는 롤백

디텍션 팩에 대한 새로운 업데이트는 주기적으로 `panther-analysis` 리포지토리에 릴리스됩니다. 이러한 업데이트는 Panther에 의해 자동으로 감지되며, 팩 개요 페이지는 관련 팩 옆에 `업데이트 사용 가능` 플래그를 표시합니다.

팩 디텍션을 업데이트하려면:

1. Panther 콘솔의 왼쪽 탐색 창에서 **디텍션**.
2. 을 클릭하세요 **Packs** 탭을 클릭하세요.
3. 업데이트하려는 팩을 찾습니다.
4. 팩 타일 내의 **버전** 드롭다운에서 버전 번호를 선택합니다.
5. 팝업 모달에서 클릭하세요 **계속**.

<figure><img src="https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-4c447cb374a5f629cbc7b99e57a3dbeac65214ed%2FScreenshot%202025-08-28%20at%203.06.04%E2%80%AFPM.png?alt=media" alt="On a modal titled, &#x22;Update Detection Pack to v3.84.0&#x22; there are two buttons: Cancel and Continue."><figcaption></figcaption></figure>

당신은 받게 될 것입니다 [콘솔 내 알림](https://docs.panther.com/ko/system-configuration/notifications) 을/를 통해 팩 업데이트가 성공했는지 확인합니다.

이전 팩 버전으로 되돌리려면:

1. Panther 콘솔의 왼쪽 탐색 창에서 **디텍션**.
2. 을 클릭하세요 **Packs** 탭을 클릭하세요.
3. 되돌리려는 팩을 찾습니다.
4. 팩 타일 내의 **버전** 드롭다운에서 버전 번호를 선택합니다.
5. 팝업 모달에서 클릭하세요 **계속**.

<figure><img src="https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-f0ceb859c558727694156a7fd53249d5bc990b62%2FScreenshot%202025-08-28%20at%203.07.52%E2%80%AFPM.png?alt=media" alt="On a modal titled, &#x22;Revert Detection Pack to v3.81.0&#x22; there are two buttons: Cancel and Continue."><figcaption></figcaption></figure>

## 팩으로 디텍션 관리하기

### 관리되는 디텍션 편집하기

팩이 활성화된 후 Panther 콘솔에서 수동으로 편집할 수 있는 필드의 하위 집합이 있습니다:

* 활성화 / 비활성화
* 심각도
* 중복 제거 기간
* 이벤트 임계값
* 대상 오버라이드
* 런북

Panther 콘솔에서 이러한 필드에 대해 수행된 모든 변경 사항은 팩이 업데이트되거나 다른 버전으로 되돌려질 때 보존됩니다. 다른 모든 필드는 Panther 콘솔에서 비활성화(회색 처리)되며 "함수 및 테스트" 편집기는 읽기 전용이 됩니다.

{% hint style="info" %}
참고: 활성화된 팩의 경우 위 필드는 **보유 고객에게만 제공됩니다** Panther 콘솔에서 수동으로 편집될 수 있습니다. Detection .yml 파일에서 이러한 필드를 편집해도 이러한 값들이 재정의되지는 않습니다.
{% endhint %}

Panther 콘솔에서 편집 가능한 필드를 변경할 수 있습니다:

1. Panther 콘솔의 왼쪽 탐색 창에서 **디텍션**.
2. 을 클릭하세요 **Packs** 탭을 클릭하세요.
3. 편집하려는 디텍션이 포함된 팩의 이름을 클릭한 다음 디텍션의 이름을 클릭합니다.
4. 디텍션에 원하는 변경 사항을 적용합니다.
   * 편집할 수 없는 필드는 회색으로 표시됩니다.
5. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. **업데이트** 페이지 오른쪽 상단에서 변경 사항을 저장하세요.

### 관리되는 디텍션 복제 및 편집

디텍션 팩에 포함된 룰 또는 정책이 필요에 맞지 않는 경우 복제한 다음 복제본을 사용자화할 수 있습니다:

1. Panther 콘솔의 왼쪽 탐색 창에서 **디텍션**.
2. 을 클릭하세요 **Packs** 탭을 클릭하세요.
3. 편집하려는 디텍션이 포함된 팩의 이름을 클릭한 다음 디텍션의 이름을 클릭합니다.
4. 다음을 따르세요 [Panther 관리 디텍션 복제 방법 안내](https://docs.panther.com/ko/detections/panther-managed/..#how-to-clone-a-panther-managed-detection) Panther 관리 디텍션 사용에 관한 문서를 참조하세요.

## 팩 소스(레거시)

{% hint style="danger" %}
커스텀 팩 소스는 더 이상 신규 고객에게 지원되지 않는 레거시 기능입니다. Panther 콘솔 외부에서 생성 및 편집된 커스텀 디텍션을 사용하려면 [Panther 개발자 워크플로우 개요](https://docs.panther.com/panther-developer-workflows/overview) 에서 지원되는 워크플로우를 이해하세요.
{% endhint %}

팩 소스는 디텍션 팩에 대한 커스텀 GitHub 소스를 구성하는 방법을 제공합니다. 팩 소스를 구성하면 Panther는 소스 리포지토리에서 태그된 새 릴리스를 24시간마다 확인합니다. Panther가 팩 소스에서 커스텀 팩을 찾으려면 다음을 수행해야 합니다:

* 릴리스가 초안 상태가 아닌 최종 상태인지 확인하세요
* 릴리스 이름이 다음에 따라 지정되었는지 확인하세요 [SemVer 형식](https://semver.org/)이며 릴리스의 태그는 릴리스 이름과 동일해야 합니다
* 릴리스 아티팩트의 이름이 다음인지 확인하세요 `panther-analysis-all.zip` (및 서명 파일을 사용하는 경우 해당하는 `panther-analysis-all.sig` )
* 다음이 포함되어 있는지 확인하세요 `panther-analysis-all.zip` 적어도 하나의 팩 매니페스트 파일을 포함해야 합니다 ([아래의 팩 매니페스트 섹션을 참조하세요](#pack-manifests) 자세한 정보를 위해)

<figure><img src="https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-d2a84484a2128a10bba398a0863a1d507c103895%2FScreen%20Shot%202022-04-05%20at%204.15.00%20PM.png?alt=media" alt="A screen shot from the Panther Analysis repo on Github. In the middle of the page, the version number is circled. Under a header labeled &#x22;Assets&#x22;, there is a red circle around panther-analysis-all.zip." width="563"><figcaption></figcaption></figure>

다음을 사용할 수 있습니다 `panther_analysis_tool` (PAT)를 사용하여 필요한 릴리스 에셋을 생성하고 초안 릴리스를 게시하세요(자세한 내용은 [GitHub 릴리스 생성 - Panther Analysis Tool](#creating-a-github-release-panther-analysis-tool) 을 참조). 커스텀 팩은 Panther가 제공하는 팩과 동일한 기능을 사용하여 관리할 수 있습니다.

팩 소스 필드는 다음 표에 설명되어 있습니다.

| **필드 이름**     | **필수 여부** | 설명                                     | 예상 값 |
| ------------- | --------- | -------------------------------------- | ---- |
| `소유자`         | 예         | 대상 리포지토리의 소유자/조직                       | 문자열  |
| `리포지토리`       | 예         | 리포지토리 이름                               | 문자열  |
| `kmsKey`      | 아니요       | 릴리스 서명을 검증하기 위한 sign/verify KMS 키의 ARN | 문자열  |
| `AccessToken` | 아니요       | 비공개 리포지토리에 접근하는 데 사용되는 개인 액세스 토큰       | 문자열  |

### 팩 매니페스트

팩은 팩 매니페스트 YAML 파일을 생성하여 정의되며, 이 파일에는 팩의 이름, 설명 및 팩에 포함된 디텍션/파일과 같은 메타데이터가 포함됩니다.

당신의 `panther-analysis-all.zip` 릴리스 아티팩트는 디텍션, 글로벌 헬퍼, 데이터 모델 등과 같은 리포지토리의 다른 파일들과 함께 여러 가지 팩 매니페스트를 포함할 수 있습니다. GitHub 리포지토리를 Panther 콘솔의 팩 소스로 추가하면 이러한 각 팩 매니페스트 파일이 Panther 콘솔에 팩으로 표시되어 개별적으로 활성화/비활성화할 수 있습니다.

다음 표는 팩 매니페스트에서 유효한 다양한 키에 대한 참조입니다. Panther가 사용하는 팩 매니페스트의 추가 예시는 우리의 [GitHub의 Panther 제공 팩](https://github.com/panther-labs/panther-analysis/tree/master/packs).

<table><thead><tr><th>필드 이름</th><th width="150">필수 여부</th><th width="210">설명</th><th>예상 값</th></tr></thead><tbody><tr><td>AnalysisType</td><td>부울 값</td><td>이 파일이 어떤 분석 유형인지 표시합니다</td><td><code>팩</code></td></tr><tr><td>PackID</td><td>부울 값</td><td>이 팩의 고유 ID</td><td>문자열</td></tr><tr><td>설명</td><td>true</td><td>Panther 콘솔에 표시될 이 팩에 대한 추가 정보</td><td>문자열</td></tr><tr><td>PackDefinition</td><td>부울 값</td><td>하나의 필드인 <code>IDs</code> 를 가진 매핑이며 이는 문자열 목록입니다. 목록의 각 문자열은 이 팩에 포함된 파일의 고유 ID여야 합니다 <code>IDs</code> { IDs: [string] }</td><td>DisplayName</td></tr><tr><td>Panther 콘솔에 이 팩에 대해 표시될 사용자 친화적 제목</td><td>부울 값</td><td>비공개 리포지토리 접근</td><td>문자열</td></tr></tbody></table>

### Panther가 비공개 리포지토리를 폴링할 수 있도록 하려면 팩 소스를 개인 액세스 토큰으로 구성해야 합니다. 토큰 생성에 대한 자세한 내용은

GitHub 문서 [를 참조하세요.](https://docs.github.com/en/github/authenticating-to-github/creating-a-personal-access-token) 개인 액세스 토큰은 계정 소유자가 접근할 수 있는 모든 리포지토리에 대한 접근 권한을 부여합니다. 우리는 해당 디텍션 팩을 포함하는 리포지토리에 외부 협력자로 추가할 수 있는

"머신 사용자" [를 생성할 것을 권장합니다. 이렇게 하면 액세스 토큰을 특정 용도와 리포지토리로 범위를 제한할 수 있습니다.](https://docs.github.com/en/developers/overview/managing-deploy-keys#machine-users) 릴리스 서명

### Panther 관리 팩은 비대칭 AWS KMS 키를 사용하여 서명됩니다. Panther 팩 소스에서 어떤 디텍션을 가져오기 전에 릴리스 에셋

panther-analysis.sig `를 사용하여 서명을 검증합니다.`이는 가져오는 디텍션이 변조되거나 수정되지 않았음을 보장합니다. 유사한 기능을 사용하려면, [sign/verify KMS 키를 생성](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html) 하고 키 정책을 수정하여 Panther가 `kms:Verify` 를 해당 키로 실행할 수 있도록 허용하세요.

키 정책에 추가할 예시 항목에서 계정 ID는 Panther가 실행되는 계정 ID로 바꿔야 합니다:

```javascript
{
    "Sid": "Enable KMS Verify",
    의 값으로는 업데이트 중인 비밀의 ARN을 사용하십시오.
    "Principal": {
        "AWS": "arn:aws:iam::{accountid}:root"
    },
    "Action": "kms:Verify",
    "Resource": "*"
}
```

### 팩 소스 관리

**팩 소스 추가하려면**:

1. Panther 콘솔의 왼쪽 탐색 창에서 **디텍션**.
2. 을 클릭하세요 **Packs** 탭을 클릭하세요.
3. 을 클릭하세요 **디텍션 팩 소스** 탭을 클릭하세요.
4. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. **새로 만들기** 오른쪽 상단에 있습니다.
   * 각 입력 필드에 대한 필드 이름을 입력하세요.
5. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. **"Resource": "\<secret ARN>"**.

<figure><img src="https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-c10a95d56e718b0eedf86ce8610106514b54e334%2FScreen%20Shot%202022-08-30%20at%204.50.20%20PM.png?alt=media" alt="The &#x22;New Detection Pack Source&#x22; form in the Panther Console shows fields for Source ID, Github Owner, Github Repo, Access Token, and Public Key or ARN." width="563"><figcaption></figcaption></figure>

**을 수정하려면 `kmsKey` 이전에 생성한 Snowflake 사용자 이름, 예를 들면 `AccessToken` 팩 소스의 필드**:

1. Panther 콘솔의 왼쪽 탐색 창에서 **디텍션**.
2. 을 클릭하세요 **Packs** 탭을 클릭하세요.
3. 을 클릭하세요 **디텍션 팩 소스** 탭을 클릭하세요.
4. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. **...** 팩 소스 옆의 를 클릭한 다음 클릭하세요 **편집을 클릭**. 팩 소스를 클릭합니다.
   * 이 페이지에서 필드를 편집하세요.
5. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. **"Resource": "\<secret ARN>"**.

**팩 소스 삭제하려면**:

1. Panther 콘솔의 왼쪽 탐색 창에서 **디텍션**.
2. 을 클릭하세요 **Packs** 탭을 클릭하세요.
3. 을 클릭하세요 **디텍션 팩 소스** 탭을 클릭하세요.
4. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. **...** 팩 소스 옆의 를 클릭한 다음 클릭하세요 **삭제**.

<figure><img src="https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-2d2ccce17329017c96dd7d06bba1e9b229085dcd%2FScreen%20Shot%202022-08-30%20at%204.53.30%20PM.png?alt=media" alt="The dropdown menu on a Pack source is expanded, with options visible to Edit or Delete." width="535"><figcaption></figcaption></figure>

{% hint style="info" %}
팩 소스를 삭제하면 해당 소스에서 유래한 팩과 그 안의 모든 디텍션이 삭제됩니다.
{% endhint %}

### GitHub 릴리스 생성 - Panther Analysis Tool

사용자를 사용할 것이며, `panther_analysis_tool` (PAT)는 서명 파일 유무에 관계없이 적절한 GitHub 릴리스를 생성하는 프로세스를 간소화할 수 있습니다.

릴리스 에셋을 생성하려면 다음을 사용하세요 `릴리스` Panther에서 수신된 HTTP 데이터에서 스키마를 추론하려면

```bash
% panther_analysis_tool release --help
사용법: panther_analysis_tool release [-h] [--aws-profile AWS_PROFILE]
                                     [--filter KEY=VALUE [KEY=VALUE ...]]
                                     [--kms-key KMS_KEY]
                                     [--minimum-tests MINIMUM_TESTS]
                                     [--out OUT] [--path PATH] [--skip-tests]

선택적 인수:
  -h, --help            이 도움말 메시지를 표시하고 종료합니다
  --aws-profile AWS_PROFILE
                        AWS Panther 배포를 업데이트할 때 사용할 AWS 프로파일.
                        입니다.
  --filter KEY=VALUE [KEY=VALUE ...]
  --kms-key KMS_KEY     릴리스 아티팩트를 서명하는 데 사용할 키 ID.
  --minimum-tests MINIMUM_TESTS
                        디텍션이 통과로 간주되기 위한 최소 테스트 수입니다. 1보다 큰 숫자가 지정되면 적어도 하나의 True 테스트와 하나의 False 테스트가 필요합니다.
                        지정된 경우, 적어도 하나의 True 및 하나의 False 테스트가 필요합니다.
                        입니다.
                        입니다.
  --out OUT             출력 파일을 저장할 경로.
  --path PATH           Panther 정책 및 룰의 상대 경로.
  --skip-tests
```

Github 리포지토리에 초안 릴리스를 자동으로 생성하려면 먼저 `GITHUB_TOKEN` 환경 변수를 대상 리포지토리에 접근할 수 있는 적절한 권한을 가진 개인 액세스 토큰으로 설정하세요. 그런 다음, `publish` Panther에서 수신된 HTTP 데이터에서 스키마를 추론하려면

{% hint style="warning" %}
참고:  `panther_analysis_tool publish` 명령은 초안 릴리스를 생성합니다. Panther가 이 릴리스 아티팩트를 가져오기 전에 GitHub 리포지토리로 이동하여 초안을 수동으로 릴리스로 최종 확정해야 합니다.
{% endhint %}

```bash
% panther_analysis_tool publish --help
사용법: panther_analysis_tool publish [-h] [--body BODY]
                                     [--github-branch GITHUB_BRANCH]
                                     [--github-owner GITHUB_OWNER]
                                     [--github-repository GITHUB_REPOSITORY]
                                     --github-tag GITHUB_TAG
                                     [--aws-profile AWS_PROFILE]
                                     [--filter KEY=VALUE [KEY=VALUE ...]]
                                     [--kms-key KMS_KEY]
                                     [--minimum-tests MINIMUM_TESTS]
                                     [--out OUT] [--skip-tests]

선택적 인수:
  -h, --help            이 도움말 메시지를 표시하고 종료합니다
  --body BODY           릴리스의 텍스트 본문
  --github-branch GITHUB_BRANCH
                        릴리스를 기반으로 할 브랜치
  --github-owner GITHUB_OWNER
                        리포지토리의 GitHub 소유자
  --github-repository GITHUB_REPOSITORY
                        GitHub 리포지토리 이름
  --github-tag GITHUB_TAG
                        이 릴리스의 태그 이름
  --aws-profile AWS_PROFILE
                        AWS Panther 배포를 업데이트할 때 사용할 AWS 프로파일.
                        입니다.
  --filter KEY=VALUE [KEY=VALUE ...]
  --kms-key KMS_KEY     릴리스 아티팩트를 서명하는 데 사용할 키 ID.
  --minimum-tests MINIMUM_TESTS
                        디텍션이 통과로 간주되기 위한 최소 테스트 수입니다. 1보다 큰 숫자가 지정되면 적어도 하나의 True 테스트와 하나의 False 테스트가 필요합니다.
                        지정된 경우, 적어도 하나의 True 및 하나의 False 테스트가 필요합니다.
                        입니다.
                        입니다.
  --out OUT             출력 파일을 저장할 경로.
  --skip-tests
```

{% hint style="info" %}
사용자를 사용할 것이며, `kms-key` 인수는 서명 파일을 생성하는 데 사용할 수 있는 선택적 인수입니다. 이 인수를 사용하려면 지정된 키에 대해 `kms:Sign` 을 호출할 수 있도록 적절한 AWS 자격 증명으로 panther\_analysis\_tool을 실행해야 합니다.
{% endhint %}
