> 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/data-transports/azure/blob-storage.md).

# Blob Storage 소스

## 개요

Panther는 Azure Blob Storage를 데이터 전송 수단으로 구성하여 Azure 컨테이너에서 로그 데이터를 직접 가져오는 기능을 지원하며, 이를 통해 처리된 데이터에 대해 탐지 규칙을 작성하고 조사를 수행할 수 있습니다.

데이터는 압축된 상태로(또는 압축되지 않은 상태로) 전송할 수 있습니다. 압축 사양에 대해 자세히 알아보려면 [Panther에서 압축된 데이터 수집](/ko/data-onboarding/data-transports.md#ingesting-compressed-data-in-panther).

## Panther에서 Azure Blob Storage 로그 소스를 설정하는 방법

Azure Blob Storage에서 로그를 수집하려면 먼저 Azure에서 특정 리소스 공급자가 귀하의 구독에 등록되어 있는지 확인합니다. Panther에서 소스 설정을 시작한 다음, 제공된 Terraform 템플릿을 사용하거나 Azure 콘솔에서 수동으로 필요한 Azure 인프라를 생성합니다.

### 사전 요구 사항

Azure 구독 설정에서 다음이 `Microsoft.EventGrid` 및 `Microsoft.Storage` 등록된 리소스 공급자인지 확인하세요:

1. Azure 콘솔에서 다음으로 이동하세요: **구독**.
2. Azure 리소스를 생성할 구독을 선택합니다.
3. 구독 설정에서 다음을 클릭합니다: **리소스 공급자**.\
   ![In the Azure Console, the page of a Subscription called Azure subscription 1 is shown. There is a list of Resource providers, e.g., Microsoft.RecoveryServices and Microsoft.DBforMySQL. On the right is a column called Status.](/files/f830b9a24fb2a7f3f81042cbdc86a947101ff238)
4. 다음 **이름으로 필터링** 필드에서 검색하여 다음을 찾습니다: `Microsoft.EventGrid` 및 `Microsoft.Storage`.
   * 각 공급자에 대해 다음을 확인합니다: **상태** 열의 값이 다음인지 확인합니다: **등록됨**.

{% hint style="info" %}
아래 절차를 따르기 위해 이미 생성된 스토리지 계정이 있을 필요는 없습니다. 다음에서 하나를 생성합니다. [2단계](#step-2-create-required-azure-infrastructure).
{% endhint %}

### 1단계: Panther에서 Azure Blob Storage 구성

1. Panther Console의 왼쪽 탐색 모음에서 **로그 소스**.
2. 오른쪽 상단 모서리에서 다음을 클릭합니다 **새로 만들기**.
3. 다음 타일을 클릭하세요: **Azure Blob Storage** 타일.
4. 다음 페이지에서 **기본 정보** 페이지에서 다음을 입력합니다:
   * **이름**: 로그 소스에 대한 설명적인 이름을 입력합니다.
   * **로그 유형**: 이 로그 소스와 연결할 하나 이상의 로그 유형을 선택합니다.
5. 클릭합니다 **설정**.
6. 다음 페이지에서 **로그 형식** 페이지에서 [스트림 유형](/ko/data-onboarding/custom-log-types/reference.md#stream-type) 들어오는 로그의:
   * **자동**
   * **줄**
   * **JSON**
   * **JSON 배열**
7. 클릭합니다 **계속**.
   * 다음 **구성** 페이지가 로드됩니다.

### 2단계: 필요한 Azure 인프라 생성

다음 페이지에서 **인프라 및 구성** 페이지에서 필요한 Azure 인프라를 생성합니다(다음을 통해 [Panther가 제공한 Terraform 템플릿 사용](#using-the-terraform-template-to-create-azure-infrastructure), 또는 [Azure 콘솔에서 리소스를 수동으로 구성](#manually-creating-infrastructure-in-the-azure-console))하고 구성 값을 Panther에 제공합니다.

{% tabs %}
{% tab title="Panther 제공 Terraform 템플릿" %}
**Terraform 템플릿을 사용하여 Azure 인프라 만들기**

{% hint style="info" %}
Terraform 템플릿을 사용하여 Azure 리소스를 생성한 후, Panther는 생성한 스토리지 계정의 모든 컨테이너에 기록된 모든 로그를 수집합니다. 생성된 Azure 애플리케이션에 각 컨테이너에서 읽을 수 있는 권한이 있는지 확인하세요.
{% endhint %}

1. 클릭합니다 **Terraform 템플릿** 다음을 다운로드하려면 [Terraform](https://github.com/panther-labs/panther-auxiliary/tree/9365346d8698e730bd623086e24ca6f2a34c4b5c/terraform/panther_azure_blob_storage_transport_type_infra) 템플릿.
   * Terraform 템플릿은 다음에서도 찾을 수 있습니다: [이 GitHub 링크](https://github.com/panther-labs/panther-auxiliary/tree/9365346d8698e730bd623086e24ca6f2a34c4b5c/terraform/panther_azure_blob_storage_transport_type_infra).\
     ![The Infrastructure & Configuration page shows 1. Create Required Infrastructure Component. There is a circled button labeled "Terraform Template"](/files/ff2ce79024c998fa09b093e174b2ce700350471a)
2. Azure CLI가 아직 설치되어 있지 않다면 다음을 따라 설치하세요 [Azure의 Azure CLI 설치 방법 문서](https://learn.microsoft.com/en-us/cli/azure/install-azure-cli).
3. 터미널에서 다음을 실행합니다 `az login`.
4. Terraform 템플릿을 새 디렉터리로 이동한 후 해당 디렉터리로 이동합니다.
5. 다음을 편집합니다 `panther.tfvars` 파일을 배포에 맞게 사용자 지정합니다. 예를 들어, 인프라가 생성될 지역을 변경하고 사용자 지정 스토리지 계정 이름을 제공합니다.
6. 다음 Terraform 명령을 실행하여 Azure 리소스를 생성합니다:
   1. `terraform init`
   2. `terraform apply -var-file="panther.tfvars"`
7. Terraform이 리소스 생성을 완료하면, 출력된 값을 다음 필드에 복사합니다: **Azure 구성 제공** Panther 콘솔의 섹션:

   * **테넌트 ID**
   * **Client ID**
   * **스토리지 계정 이름**
   * **스토리지 큐 이름**
   * **Client Secret**
     * 클라이언트 비밀 값은 터미널에서 가려집니다. 보려면 다음을 실행하세요 `terraform output secret`, 그리고 따옴표 없이 값을 복사합니다.
       * macOS를 사용 중이라면 다음을 실행하세요 `terraform output -raw secret | pbcopy` 값을 출력하지 않고 복사합니다.

   ![소스 설정의 이 섹션에는 "2. Azure 구성 제공"이 표시되며 Tenant ID, Client ID, Storage Account Name, Storage Queue Name, Client Secret에 대한 양식 필드가 있습니다.](/files/6e1dc7d9e15c30b7194f53182c036828b38fc645)
8. Azure Blob Storage가 Azure Government Cloud에 있는지 Public Cloud에 있는지 선택합니다.
9. 클릭합니다 **설정**, 그런 다음 다음으로 계속합니다 [3단계: Panther에서 설정 확인](#step-3-verify-setup-in-panther).
   {% endtab %}

{% tab title="Azure 콘솔에서 수동 설정" %}
**Azure 콘솔에서 인프라를 수동으로 생성하기**

**1단계: 리소스 그룹 및 스토리지 계정 만들기**

1. Azure 콘솔에서 다음으로 이동하세요: **구독**.
2. Azure 리소스를 생성할 구독을 선택합니다.
3. 클릭합니다 **리소스 그룹**.
   1. 클릭합니다 **+만들기**.\
      ![In the Azure console, the Azure subscription 1 Resource groups page is shown. A +Create button is circled.](/files/2f081b4539f6766c154cddfacdd5a19fd72b7053)
   2. 다음에 대한 값을 제공하세요. **이름** 및 **리전**.
      * 다음에 대해 제공한 값을 적어두거나 기억하세요 **이름**, 이 과정 후반에 필요합니다.
   3. 클릭합니다 **검토 및 만들기.**
   4. 클릭합니다 **생성**.
4. 새로 만든 리소스 그룹의 이름을 클릭합니다.
5. 클릭합니다 **생성**.
6. 검색창에 "storage account"를 입력하고 다음에서 **스토리지 계정** 타일이 나타나면 다음을 클릭합니다 **생성**.\
   ![In the Azure console, in the Marketplace, storage has been searched in a search bar. On a Storage account tile, the Create button is circled.](/files/16aec77dd9f031eec1f795c824f7ff5d4722a082)
7. 다음 페이지에서 **스토리지 계정 만들기** 페이지에서 **인스턴스 세부 정보** 섹션에서 다음 값들을 입력합니다 **스토리지 계정 이름** 및 **리전**.
   1. 클릭합니다 **검토** .\
      ![On the Create a storage account page of the Azure console, there is a Project details section and a Instance details section. Within the latter, the following fields are circled: Storage account name and Region. A Review button at the bottom is circled.](/files/5768c824e022e53d03e07e75864dd1f103d858dc)
   2. 클릭합니다 **생성**.

**2단계: 앱 등록 및 클라이언트 비밀 추가**

1. 상단 검색창에서 "Microsoft Entra ID"를 검색하고 다음을 클릭합니다 **Microsoft Entra ID**.
2. 클릭합니다 **+추가**, 그리고 표시되는 드롭다운 메뉴에서 **앱 등록**.\
   ![In the Azure console, the Default Directory Overview page shows an +Add button. An arrow is drawn from +Add to an option in its dropdown, App registration.](/files/66b1a412c8884d6203391bf828e2e7f7c20d0b55)
   1. 다음을 입력하세요 **이름**.
   2. 클릭합니다 **등록**.
   3. 다음을 안전하게 복사하여 저장하세요 **애플리케이션(클라이언트) ID** 값은 이 과정 후반에 필요합니다.
3. 새로 등록한 앱을 클릭합니다.
4. 오른쪽에서 다음을 클릭합니다 **인증서 또는 비밀 추가**.\
   ![In the Azure console, within an App called pantherapp3, an Add a certificate or secret button at the right side of the screen is circled.](/files/aa8a81710a2244aa16e24bd9f026c94590b112dc)
5. 클릭합니다 **+새 클라이언트 비밀**.
   1. 다음을 제공하세요 **설명**.
   2. 클릭합니다 **추가**.
   3. 다음을 안전하게 복사하여 저장하세요 **Client Secret** **값**, 이 과정 후반에 필요합니다.

**3단계: 큐 만들기 및 권한 추가**

1. 새로 생성한 스토리지 계정으로 이동합니다.
2. 왼쪽 탐색 모음에서 다음을 선택합니다 **큐**.
   1. 클릭합니다 **+큐** 새 큐를 만듭니다.\
      ![The panthertestacct3 Queues page shows an arrow drawn to the +Queue button. In the Queue name field is panthertestqueue3.](/files/8ea60ec985f6c8756d92a4de2a8b4630e434d144)
   2. 다음을 입력하세요 **이름** 큐 이름으로.
      * 다음에 대해 제공한 값을 적어두거나 기억하세요 **이름**, 이 과정 후반에 필요합니다.
   3. 클릭합니다 **확인**.
3. 새로 만든 큐를 클릭한 다음, 왼쪽 탐색 모음에서 다음을 클릭합니다 **액세스 제어(IAM)**.
   1. 클릭합니다 **+추가**그다음 **역할 할당 추가**.
   2. "Storage Queue Data Message Processor"를 검색하고 표시되는 일치하는 역할을 선택합니다.
   3. 다음을 클릭하세요: **구성원** 탭.
   4. 클릭합니다 **+구성원 선택**.
   5. 다음에서 생성한 등록된 앱의 이름을 검색합니다 [2단계](#step-2-add-app-registration-and-client-secret), 그리고 다음을 클릭합니다 **선택**.
   6. 클릭합니다 **검토+할당**.

**4단계: 시스템 토픽 및 이벤트 구독 만들기**

1. 상단 검색창에서 "Event Grid System Topics"를 검색하고 표시되는 일치하는 페이지를 클릭합니다.
   1. 클릭합니다 **+만들기**.
   2. 다음 페이지에서 **Event Grid 시스템 토픽 만들기** 페이지에서 다음 필드를 채웁니다
      * **토픽 유형**: 선택 **스토리지 계정(Blob 및 GPv2)**.
      * **구독**: 다음 동안 리소스 그룹을 만든 구독을 선택합니다 [1단계](#step-1-create-resource-group-and-storage-account).
      * **리소스 그룹**: 다음에서 만든 리소스 그룹을 선택합니다 [1단계](#step-1-create-resource-group-and-storage-account).
      * **리소스**: 다음에서 만든 스토리지 계정을 선택합니다 [1단계](#step-1-create-resource-group-and-storage-account).
      * **이름**: 설명적인 토픽 이름을 입력합니다.\
        ![In the Azure Console's Create Event Grid System Topic page, there are various fields under a Topic Details header: Topic Types, Subscription, Resource Group, Resource, and under a System Topic Details header: Name and Location](/files/82020dde57d828fb430ef0ae59394001fb41a0a9)
   3. 클릭합니다 **검토+만들기**.
   4. 클릭합니다 **생성**.
2. 스토리지 계정으로 다시 이동합니다.
3. 왼쪽 탐색 모음에서 **이벤트** 그런 다음 **+이벤트 구독**.
4. 다음 페이지에서 **이벤트 구독 만들기** 페이지에서 다음 필드의 값을 입력하세요:
   1. 다음 **이벤트 구독 세부 정보** 섹션에서 다음을 입력합니다 **이름**.
   2. 다음 **이벤트 유형** 섹션에서 다음에 대해 **이벤트 유형으로 필터링** 필드에서 다음을 선택합니다 **Blob 생성됨**.
   3. 다음 **엔드포인트 세부 정보** 섹션에서 다음 선택을 합니다:

      * **엔드포인트 유형**: 선택 **스토리지 큐**.
      * **엔드포인트**: 다음에서 만든 큐를 선택합니다 [3단계](#step-3-create-queue-and-add-permission).

      ![Azure 콘솔의 이벤트 구독 만들기 페이지에서 Name, Filter to Event Types, Endpoint Type, Endpoint 등 여러 필드가 동그라미로 표시되어 있습니다.](/files/d78d7fdd6408432e230a7dac0a92c17a37f3a9a8)
   4. 클릭합니다 **생성**.

**5단계: 컨테이너 만들기 및 권한 추가**

{% hint style="info" %}
이미 생성된 컨테이너가 있다면, 다음에서 생성한 애플리케이션에 읽기 권한만 부여하면 됩니다 [2단계](#step-2-add-app-registration-and-client-secret). 아래 지침 세트에서는 3단계부터 시작하세요.

생성한 스토리지 계정의 모든 컨테이너에 기록된 모든 로그가 수집되므로, 이 컨테이너에 대한 정보를 Panther에 제공할 필요는 없습니다.
{% endhint %}

1. 새로 생성한 스토리지 계정으로 이동합니다.
2. 왼쪽 탐색 모음에서 다음을 선택합니다 **컨테이너**.
   1. 클릭합니다 **+컨테이너** 새 컨테이너를 만듭니다.\
      ![On the panthertestacct3 storage account's Containers page, an arrow is drawn to the +Container button.](/files/d384348700cde2feb5240388f7a4df487d23d0d8)
   2. 다음을 입력하세요 **이름** 컨테이너 이름으로.
      * 다음에 대해 제공한 값을 적어두거나 기억하세요 **이름**, 이 과정 후반에 필요합니다.
   3. 클릭합니다 **생성**.
3. 새로 만든 컨테이너를 클릭한 다음, 왼쪽 탐색 모음에서 다음을 클릭합니다 **액세스 제어(IAM)**.
   1. 클릭합니다 **+추가**.\
      ![In the panthertestcontainer3 Access Control (IAM) page, an arrow is drawn to the +Add button](/files/3d9979bcb075fda233831f277fdf2686ed69ad28)
   2. 클릭합니다 **역할 할당 추가**.
   3. "Storage Blob Data Reader"를 검색하고 표시되는 일치하는 역할을 선택합니다.\
      ![In the Add role assignment page of the Azure console, "storage blob" has been searched for in the search box. One of the results, Storage Blob Data Reader, is circled.](/files/9f890ad23deede1d5cac7a8c69456b57e6e59a24)
   4. 다음을 클릭하세요: **구성원** 탭.
   5. 클릭합니다 **+구성원 선택**.
   6. 다음에서 만든 등록된 앱의 이름을 검색합니다 [2단계](#step-2-add-app-registration-and-client-secret), 그리고 다음을 클릭합니다 **선택**.
   7. 클릭합니다 **검토+할당**.

**6단계: Azure 구성 값을 Panther 콘솔에 다시 복사**

1. 다음으로 돌아갑니다 **인프라 및 구성** Panther Console의 페이지에.
2. 다음 **Azure 구성 제공** 섹션에서 다음 필드의 값을 복사합니다:
   * **테넌트 ID**: 이 값은 Azure 콘솔의 **Microsoft Entra ID** 홈 페이지에서 찾을 수 있습니다.
   * **Client ID**: 다음에서 생성된 애플리케이션(클라이언트) ID [2단계](#step-2-add-app-registration-and-client-secret).
   * **스토리지 계정 이름**: 다음에서 스토리지 계정에 지정한 이름 [1단계](#step-1-create-resource-group-and-storage-account).
   * **스토리지 큐 이름**: 다음에서 큐에 지정한 이름 [3단계](#step-3-create-queue-and-add-permission).
   * **Client Secret**: 다음에서 생성된 클라이언트 비밀 값 [2단계](#step-2-add-app-registration-and-client-secret).\
     ![This section of the source setup shows "2. Provide Azure configuration" and there are form fields for Tenant ID, Client ID, Storage Account Name, Storage Queue Name, and Client Secret.](/files/6e1dc7d9e15c30b7194f53182c036828b38fc645)
3. Azure Blob Storage가 Azure Government Cloud에 있는지 Public Cloud에 있는지 선택합니다.
4. 클릭합니다 **설정**, 그런 다음 다음으로 계속합니다 [3단계: Panther에서 설정 확인](#step-3-verify-setup-in-panther).
   {% endtab %}
   {% endtabs %}

### 3단계: Panther에서 설정 확인

성공 화면으로 이동합니다:

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

### 로그 소스에 새 로그 추가

로그 소스에 추가 Azure 로그 유형을 추가하려면 다음에 설명된 단계를 따를 수 있습니다 [Azure Monitor Logs 문서](https://docs.panther.com/data-onboarding/supported-logs/azure-monitor?q=azure#step-2-export-azure-monitor-logs).

## 수집된 로그 보기

로그 소스가 구성된 후 다음을 사용하여 수집된 데이터를 검색할 수 있습니다: [검색](/ko/search/search-tool.md) 또는 [데이터 탐색기](/ko/search/data-explorer.md).


---

# 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/data-transports/azure/blob-storage.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.
