For the complete documentation index, see llms.txt. This page is also available as Markdown.

Cloud Storage(GCS) 소스

Panther Console에서 GCS를 데이터 전송 로그 소스로 온보딩

개요

Panther는 Google Cloud Storage(GCS)를 데이터 전송 수단으로 구성하여 GCS 버킷에서 로그 데이터를 직접 가져오고, 규칙을 작성하며, 이 처리된 데이터에 대해 쿼리를 실행하는 것을 지원합니다. Panther는 Pub/Sub 버킷에서 소비할 준비가 된 새 데이터에 대한 알림을 받기 위해.

Panther는 Google Cloud를 사용하여 소스에 대해 인증할 수 있습니다 Workload Identity Federation 또는 서비스 계정.

데이터는 압축된 상태로(또는 압축되지 않은 상태로) 전송할 수 있습니다. 압축 사양에 대해 자세히 알아보려면 Panther에서 압축된 데이터 수집.

Panther에서 GCS 로그 소스를 설정하는 방법

1단계: Panther에서 GCS 소스 만들기를 시작합니다

  1. Panther Console의 왼쪽 탐색 모음에서 로그 소스.

  2. 오른쪽 상단에서 다음을 클릭하세요: 새로 만들기.

  3. 다음 타일을 클릭하세요: Google Cloud Storage 타일.

  4. 다음 페이지에서 기본 정보 페이지에서 다음 필드를 입력하세요:

    • 이름: GCS 로그 소스의 설명적인 이름을 입력합니다.

    • 접두사 및 스키마: GCS의 데이터 저장 구조에 따라 접두사, 스키마, 제외 필터의 조합을 정의합니다.

      • 버킷의 모든 데이터에 하나 이상의 스키마를 연결하려면 다음 항목을 비워 두세요 GCS 접두사 필드를 비워 두세요. 그러면 와일드카드(*) 접두사가 생성됩니다.

  5. 클릭합니다 설정.

  6. 다음 페이지에서 로그 형식 페이지에서 스트림 유형 들어오는 로그의:

    • 자동

    • JSON

    • JSON 배열

  7. 클릭합니다 계속.

2단계: 필요한 Google Cloud Platform(GCP) 인프라를 생성합니다 필요한 Google Cloud Platform(GCP) 인프라를

GCP 인프라를 생성하기 전에 다음을 결정해야 합니다:

Panther가 다음을 사용하여 인증하도록 하려면 Google Cloud 서비스 계정을 사용해 아래 탭 중 하나의 지침을 따르세요.

Terraform을 사용하여 GCP 인프라를 생성하려면(서비스 계정으로 인증):

  1. 다음 페이지에서 인프라 및 자격 증명 페이지에서 서비스 계정 탭. Under an "Infrastructure & Credentials" header, a tab labeled "Service Account" is circled.

  2. 클릭합니다 Terraform 템플릿 를 클릭하여 Terraform 템플릿을 다운로드합니다.

  3. 다음의 필드를 채웁니다. panther.tfvars 파일에 구성 내용을 입력합니다.

    • 다음을 설정합니다 authentication_method 에서 "service_account".

  4. Terraform 구성 파일이 포함된 작업 디렉터리를 초기화하고 다음을 실행합니다 terraform init.

  5. 해당하는 Terraform 명령어를 복사하고 제공된 명령을 CLI에서 실행합니다.

  6. 다음을 복사하여 JSON 키 파일을 생성합니다. gcloud 명령어 를 제공된 대로 사용하되, 서비스 계정 이메일 주소의 값을 바꿔 CLI에서 실행합니다.

    • 서비스 계정 이메일은 다음의 출력에서 찾을 수 있습니다. Terraform 명령어를 복사하고.

GCP 콘솔에서 GCP 인프라 구성 요소를 수동으로 생성하려면(서비스 계정으로 인증):

  1. Google Cloud 콘솔에서 Panther가 로그를 가져올 버킷을 확인합니다.

  2. 주제 만들기 알림용으로.

    • 다음을 사용하여 주제를 만들 수 있습니다. gcloud CLI 도구와 다음 명령 형식을 사용합니다: gcloud pubsub topics create $TOPIC_ID

  3. 버킷이 알림을 보내도록 구성합니다 방금 만든 주제로 새 파일에 대한 알림을 보냅니다.

    • 다음을 사용하여 알림을 만들 수 있습니다. gcloud CLI 도구와 다음 명령 형식을 사용합니다: gsutil notification create -t $TOPIC_NAME -e OBJECT_FINALIZE -f json gs://$BUCKET_NAME

    • 참고: Panther는 다음 유형만 필요로 합니다. OBJECT_FINALIZE 유형.

  4. 구독 만들기 방금 만든 주제와 함께 사용할 것입니다.

    • 다음을 사용하여 구독을 만들 수 있습니다. gcloud CLI 도구와 다음 명령 형식을 사용합니다: gcloud pubsub subscriptions create $SUBSCRIPTION_ID --topic $TOPIC_ID --topic-project $PROJECT_ID

  1. 새 Google Cloud 서비스 계정 만들기. 다음을 사용해 계정을 만들려면 gcloud CLI 도구에서 다음 명령 형식을 사용합니다:

    • Panther가 이 GCS 통합을 위해 생성된 인프라에 액세스할 때 이 계정 이메일 주소를 사용하므로 반드시 기록해 두세요.

  2. 계정에 필요한 IAM 역할을 할당합니다.

    • 다음 권한은 Pub/Sub 구독 및 주제가 있는 프로젝트에 필요합니다.

      필요한 권한

      역할

      범위

      storage.objects.get

      storage.objects.list

      roles/storage.objectViewer

      bucket-name

      pubsub.subscriptions.consume

      roles/pubsub.subscriber

      subscription-name

      pubsub.subscriptions.get

      roles/pubsub.viewer

      subscription-name

      monitoring.timeSeries.list

      roles/monitoring.viewer

      project

      • 참고: 특정 리소스의 권한에 조건이나 IAM 정책을 설정할 수 있습니다. 이는 서비스 계정의 IAM 페이지(아래 예시 스크린샷 참조) 또는 특정 리소스의 페이지에서 할 수 있습니다. On the IAM page of the service account, under the header "Grant this service account access to project," there are fields for Rule and Condition.

      • 참고: 다음을 사용하여 권한을 만들 수 있습니다. gcloud CLI 도구:

        • gcloud projects add-iam-policy-binding $PROJECT_ID --member="serviceAccount:$SERVICE_ACCOUNT_EMAIL" --role="roles/storage.objectViewer"

        • gcloud projects add-iam-policy-binding $PROJECT_ID --member="serviceAccount:$SERVICE_ACCOUNT_EMAIL" --role="roles/pubsub.subscriber"

        • gcloud projects add-iam-policy-binding $PROJECT_ID --member="serviceAccount:$SERVICE_ACCOUNT_EMAIL" --role="roles/pubsub.viewer"

        • gcloud projects add-iam-policy-binding $PROJECT_ID --member="serviceAccount:$SERVICE_ACCOUNT_EMAIL" --role="roles/monitoring.viewer"

  3. JSON 키 파일 생성 서비스 계정용이며, Panther에서 GCP 인프라에 인증할 때 사용됩니다.

    • gcloud CLI 도구를 사용하여 JSON 키 파일을 만들려면 다음 명령 형식을 실행합니다: gcloud iam service-accounts keys create $KEYFILE_PATH --iam-account=$SERVICE_ACCOUNT_EMAIL

    • 또는 위 명령을 로컬 대신 GCP의 터미널에서 실행할 수도 있습니다.

      1. 오른쪽 상단의 점 3개 아이콘 메뉴를 클릭한 다음 다운로드.

      2. 찾아보기용 폴더 아이콘을 클릭합니다.

      3. 키 파일로 이동하여 선택한 다음 다운로드.

Panther가 다음을 사용하여 인증하도록 하려면 Google Cloud Workload Identity Federation을 사용해 아래 탭 중 하나의 지침을 따르세요.

Terraform을 사용하여 GCP 인프라 구성 요소를 생성하려면(Workload Identity Federation으로 인증):

  1. 다음 페이지에서 인프라 및 자격 증명 페이지, 다음을 클릭합니다 Workload Identity Federation 탭. Under an "Infrastructure & Credentials" header, a tab labeled "Workload Identity Federation" is circled.

  2. 클릭합니다 Terraform 템플릿 를 클릭하여 Terraform 템플릿을 다운로드합니다.

  3. 다음의 필드를 채웁니다. panther.tfvars 파일에 구성 내용을 입력합니다.

    • 다음을 설정합니다 authentication_method 에서 "workload_identity_federation".

    • 다음에 대한 값을 제공하세요. panther_workload_identity_pool_id, panther_workload_identity_pool_provider_id,panther_aws_account_id.

  4. Terraform 구성 파일이 포함된 작업 디렉터리를 초기화하고 다음을 실행합니다 terraform init.

  5. 해당하는 Terraform 명령어를 복사하고 제공된 명령을 CLI에서 실행합니다.

  6. 다음을 복사하여 풀용 자격 증명 구성 파일을 생성합니다. gcloud 명령어 를 제공된 대로 사용하되, 프로젝트 번호, 풀 ID, 공급자 ID의 값을 바꿔 CLI에서 실행합니다.

    • 프로젝트 번호, 풀 ID, 공급자 ID는 다음의 출력에서 찾을 수 있습니다. Terraform 명령어를 복사하고.

GCP 콘솔에서 GCP 인프라 구성 요소를 수동으로 생성하려면(Workload Identity Federation으로 인증):

  1. Google Cloud 콘솔에서 Panther가 로그를 가져올 버킷을 확인합니다.

  1. 주제 만들기 알림용으로.

    • 다음을 사용하여 주제를 만들 수 있습니다. gcloud CLI 도구와 다음 명령 형식을 사용합니다: gcloud pubsub topics create $TOPIC_ID

  2. 버킷이 알림을 보내도록 구성합니다 방금 만든 주제로 새 파일에 대한 알림을 보냅니다.

    • 다음을 사용하여 알림을 만들 수 있습니다. gcloud CLI 도구와 다음 명령 형식을 사용합니다: gsutil notification create -t $TOPIC_NAME -e OBJECT_FINALIZE -f json gs://$BUCKET_NAME

    • 참고: Panther는 다음 유형만 필요로 합니다. OBJECT_FINALIZE 유형.

  3. 구독 만들기 방금 만든 주제와 함께 사용할 것입니다.

    • 다음을 사용하여 구독을 만들 수 있습니다. gcloud CLI 도구와 다음 명령 형식을 사용합니다: gcloud pubsub subscriptions create $SUBSCRIPTION_ID --topic $TOPIC_ID --topic-project $PROJECT_ID

  1. 다음을 따라 AWS와 함께 Workload Identity Federation을 구성합니다. AWS 또는 Azure와 함께 Workload Identity Federation 구성 문서.

    1. 다음을 속성 매핑 및 조건을 정의하는 동안, 다음 예제를 참고하세요:

      • 예시 속성 매핑:

        Google
        AWS

        google.subject

        assertion.arn.extract('arn:aws:sts::{account_id}:')+":"+assertion.arn.extract('assumed-role/{role_and_session}').extract('/{session}')

        attribute.account

        assertion.account

      • 예시 속성 조건: attribute.account=="<PANTHER_AWS_ACCOUNT_ID>"

b. 다음을 신원 풀에 공급자를 추가할 때, 선택 AWS.

  1. 계정에 필요한 IAM 역할을 할당합니다.

    • 다음 권한은 Pub/Sub 구독 및 주제가 있는 프로젝트에 필요합니다.

필요한 권한

역할

범위

storage.objects.get

storage.objects.list

roles/storage.objectViewer

bucket-name

pubsub.subscriptions.consume

roles/pubsub.subscriber

subscription-name

pubsub.subscriptions.get

roles/pubsub.viewer

subscription-name

monitoring.timeSeries.list

roles/monitoring.viewer

project

  • 참고: 특정 리소스의 권한에 조건이나 IAM 정책을 설정할 수 있습니다. 이는 GCP의 IAM 섹션(아래 예시 스크린샷 참조) 또는 특정 리소스의 페이지에서 할 수 있습니다. In the Google Cloud console, the "IAM" navigation bar item is circled. In a slide-out panel, sections titled "Add principals" and "Assign roles" are circled.

  • 참고: 다음을 사용하여 권한을 만들 수 있습니다. gcloud CLI 도구에서 $PRINCIPAL_ID 는 다음과 같을 수 있습니다: principalSet://iam.googleapis.com/projects/<THE_ACTUAL_GOOGLE_PROJECT_NUMBER>/locations/global/workloadIdentityPools/<THE_ACTUAL_POOL_ID>/attribute.account/<THE_ACTUAL_PANTHER_AWS_ACCOUNT_ID>

    • gcloud projects add-iam-policy-binding $PROJECT_ID --member="$PRINCIPAL_ID" --role="roles/storage.objectViewer"

    • gcloud projects add-iam-policy-binding $PROJECT_ID --member="$PRINCIPAL_ID" --role="roles/pubsub.subscriber"

    • gcloud projects add-iam-policy-binding $PROJECT_ID --member="$PRINCIPAL_ID" --role="roles/pubsub.viewer"

    • gcloud projects add-iam-policy-binding $PROJECT_ID --member="$PRINCIPAL_ID" --role="roles/monitoring.viewer"

  1. 자격 증명 구성 파일 다운로드는 Panther에서 GCP 인프라에 인증할 때 사용됩니다.

    • gcloud CLI 도구를 사용하여 자격 증명 구성 파일을 생성하려면 다음 명령 형식을 사용합니다: gcloud iam workload-identity-pools create-cred-config projects/$PROJECT_NUMBER/locations/global/workloadIdentityPools/$POOL_ID/providers/$PROVIDER_ID --aws --output-file=config.json

3단계: Panther에 자격 증명 파일과 구성 값을 제공합니다

다음을 사용하는 경우 Google Cloud 서비스 계정 로 인증하려면:

  1. 아래 풀링 구성 및 JSON 키 파일 제공를 업로드합니다.

  2. 다음을 입력합니다. GCS 버킷 이름Pub/Sub 구독 ID, 다음에서 찾을 수 있습니다. 구독 Google Cloud 계정의 섹션.

  3. 클릭합니다 설정. 성공 화면으로 이동합니다:

    The success screen reads, "Everything looks good! Panther will now automatically pull & process logs from your account"
    • 선택적으로 하나 이상의 디택션 팩.

    • 아직 하지 않았다면 다음을 클릭하세요: 스키마 연결 또는 추론 소스에 하나 이상의 스키마를 연결합니다.

    • 다음 이벤트가 처리되지 않으면 알러트를 발생시키기 설정의 기본값은 . 일정 시간 후 로그 소스에서 데이터 흐름이 중단되면 알러트를 받게 되므로 이 설정을 켠 상태로 두는 것을 권장합니다. 시간 범위는 구성 가능하며 기본값은 24시간입니다.

      The "Trigger an alert when no events are processed" toggle is set to YES. The "How long should Panther wait before it sends you an alert that no events have been processed" setting is set to 1 Day

다음을 사용하는 경우 Google Cloud Workload Identity Federation 로 인증하려면:

  1. 다음 페이지에서 인프라 및 자격 증명 페이지아직 하지 않았다면 Workload Identity Federation 탭. Under an "Infrastructure & Credentials" header, a tab labeled "Workload Identity Federation" is circled.

  2. 아래 풀링 구성 및 자격 증명 구성 파일 제공를 업로드합니다.

  3. 다음을 입력합니다. 프로젝트 ID, GCS 버킷 이름, 및 Pub/Sub 구독 ID 다음에서 찾을 수 있습니다. 구독 Google Cloud 계정의 섹션. In a tab titled "Workload Identity Federation," there are various buttons and form fields, including "GCS Bucket Name," "Pub/Sub Subscription ID," and "Project ID."

  4. 클릭합니다 설정. 성공 화면으로 이동합니다:

    The success screen reads, "Everything looks good! Panther will now automatically pull & process logs from your account"
    • 선택적으로 하나 이상의 디택션 팩.

    • 아직 하지 않았다면 다음을 클릭하세요: 스키마 연결 또는 추론 소스에 하나 이상의 스키마를 연결합니다.

    • 다음 이벤트가 처리되지 않으면 알러트를 발생시키기 설정의 기본값은 . 일정 시간 후 로그 소스에서 데이터 흐름이 중단되면 알러트를 받게 되므로 이 설정을 켠 상태로 두는 것을 권장합니다. 시간 범위는 구성 가능하며 기본값은 24시간입니다.

      The "Trigger an alert when no events are processed" toggle is set to YES. The "How long should Panther wait before it sends you an alert that no events have been processed" setting is set to 1 Day

수집된 로그 보기

로그 소스가 구성된 후 다음을 사용하여 수집된 데이터를 검색할 수 있습니다: 검색 또는 데이터 탐색기.

마지막 업데이트

도움이 되었나요?