# CI/CD 워크플로로 마이그레이션하기

Panther는 탐지 콘텐츠 관리를 위해 콘솔과 CI/CD 워크플로를 동시에 사용하는 것을 지원하지 않습니다. Panther 콘솔에서 탐지 항목 관리를 CI/CD 워크플로로 전환하려는 경우, 아직 해당 `panther-analysis` 레포를 복제하거나 포크하지 않았다면 아래 절차를 따르십시오:

{% hint style="info" %}
이 페이지에서는 CI/CD 워크플로로 초기 마이그레이션을 수행하는 방법을 설명합니다. 이미 CI/CD를 사용 중이고 Panther 콘솔에서 [선택적으로 하나 이상의](https://docs.panther.com/ko/detections/panther-managed/packs) 의 사용을 중단하려는 경우, 대신 [이 지식 베이스 문서를 참조하세요](https://help.panther.com/articles/9211266919-how-can-i-transition-to-using-panther-with-just-a-ci-cd-workflow-for-our-cloned-repo) 를 따르십시오.
{% endhint %}

### 1단계: 콘솔에서 생성한 콘텐츠 다운로드

CI/CD는 업로드 시 룰, 정책, 글로벌 헬퍼 및 데이터 모델을 포함하여 업로드된 모든 항목을 덮어씁니다. Panther가 관리하는 enrichment provider 헬퍼, 글로벌 헬퍼 또는 데이터 모델의 자체 복사본을 만든 경우, 이들 또한 다운로드해야 합니다.

두 가지 옵션이 있습니다: 모든 엔티티를 한 번에 일괄 다운로드하거나 엔티티를 개별적으로 다운로드하기:

{% tabs %}
{% tab title="옵션 1: 모든 엔티티 일괄 다운로드" %}
이 옵션을 사용하면 Panther 콘솔에서 모든 탐지, 글로벌 헬퍼, 저장된 검색 및 데이터 모델을 다운로드할 수 있습니다. 이 다운로드에는 활성화된 모든 항목(기본 Panther 룰 포함)이 포함되며 모든 파일을 하나의 폴더 아래에 출력합니다. 파일을 적절한 저장소 구조로 이동해야 합니다.

1. Panther 콘솔의 왼쪽 탐색 창에서 **탐지.**
2. 오른쪽 상단에서 **업로드**.
3. 일반 구성 **대량 업로더** 모달에서 클릭하세요 **모든 엔티티 다운로드**.
   {% endtab %}

{% tab title="옵션 2: 엔티티를 개별적으로 다운로드 " %}
**탐지 다운로드**

1. Panther 콘솔의 왼쪽 탐색 창에서 **디텍션**.
2. 을 클릭하세요 **필터** 아이콘. **생성자** 필터에서 **팀이 생성**.
3. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. **필터 적용**.
4. 탐지의 각 페이지를 다운로드합니다.
   1. 일괄 확인 **모두 선택** 목록 왼쪽 상단의 박스.
   2. 목록 상단에서 클릭 **다운로드**.

탐지 항목은 버전 관리 시스템에 통합할 수 있는 zip 파일로 다운로드됩니다.

**헬퍼 다운로드**

1. Panther 콘솔의 왼쪽 탐색 창에서 **탐지.**
2. 을 클릭하세요 **헬퍼** 탭을 클릭하세요.
3. 헬퍼 타일 오른쪽에서 클릭 **...** 그런 다음 클릭 **다운로드**.
4. 각 개별 헬퍼마다 반복하십시오.

**데이터 모델 다운로드**

1. Panther 콘솔의 왼쪽 탐색 창에서 **디텍션**.
2. 을 클릭하세요 **데이터 모델** 탭을 클릭하세요.
3. 데이터 모델 타일 오른쪽에서 클릭 **...** 그런 다음 클릭 **다운로드**.
4. 각 개별 데이터 모델마다 반복하십시오.
   {% endtab %}
   {% endtabs %}

### 2단계: Developer Workflow 옵션 활성화

Panther 탐지 팩이 콘솔에서 활성화되는 것을 방지하려면 개발자 워크플로 계정임을 자체 선언하십시오:

1. Panther 콘솔에서 이동: **설정 > 일반**.
2. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. **개발자 워크플로우**.
3. 옵션을 전환하여 **켜기** 콘솔에서 Panther 탐지 팩이 활성화되는 것을 허용하지 않도록 합니다.\
   ![Under the "Developer Workflows" tab, there is an option called "We use the Panther Analysis Tool to manage our detections." There is a toggle switch next to it, which is enabled.](https://2400888838-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fgit-blob-60e9b243341ee1b32f0d5b7fcea325dec2aed7a5%2Fread-only-users.png?alt=media)

### 3단계: 사용자를 읽기 전용으로 표시

사용자가 소스 제어와 충돌할 수 있는 편집을 Panther 콘솔에서 하지 못하도록 하려면 해당 사용자를 읽기 전용으로 표시하십시오:

1. Panther 콘솔에서 이동: **설정 > 사용자**.
2. 사용자 목록에서 CI/CD 워크플로를 사용하는 개발자를 찾으십시오.
3. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. **...** 사용자 타일 오른쪽의 에서. 나타나는 드롭다운 메뉴에서 클릭 **편집을 클릭**.
4. 사용자 역할을 읽기 전용으로 변경합니다.
5. 를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. **업데이트**.
6. CI/CD 워크플로를 사용하는 각 개발자에 대해 이 단계를 반복하십시오.

### 4단계: CI/CD 워크플로 설정

* 다음 중 하나를 참조하십시오: [GitHub Actions를 통한 Panther 콘텐츠 관리](https://docs.panther.com/ko/panther/detections-repo/ci-cd/deployment-workflows/github-actions) 이전에 생성한 Snowflake 사용자 이름, 예를 들면 [CircleCI를 통한 Panther 콘텐츠 관리](https://docs.panther.com/ko/panther/detections-repo/ci-cd/deployment-workflows/circle-ci) 를 참조하여 CI/CD 워크플로를 설정합니다.
