Pub/Sub 소스
Panther 콘솔에서 Google Cloud Pub/Sub를 데이터 전송 로그 소스로 온보딩하기
개요
Panther는 구성 지원 Google Pub/Sub 을(를) 데이터 전송으로 사용하여 Pub/Sub 주제에서 로그 데이터를 직접 가져올 수 있습니다.
Panther는 Google Cloud Workload Identity Federation 또는 서비스 계정을(를) 사용하여 소스에 대해 인증하는 것을 지원합니다. 지역 엔드포인트를 지원하며(예: 조직에 규정 준수 요구사항이 있어 데이터가 Google Cloud의 특정 지역에 있어야 하는 경우) enforceInTransit 플래그를 활성화해야 할 수 있습니다..
Panther에서 Cloud Pub/Sub 로그 소스를 설정하는 방법
1단계: Panther에서 Pub/Sub 소스 구성
Panther 콘솔의 왼쪽 탐색 막대에서 구성 > 로그 소스.
오른쪽 상단에서 새로 만들기.
를 클릭하세요. Google Cloud Pub/Sub 타일을 클릭합니다.
의 기본 정보 페이지에서 다음 필드를 입력합니다:
이름: 로그 소스에 대한 설명적인 이름을 입력하세요.
로그 유형: Panther가 로그를 파싱하는 데 사용할 로그 유형을 선택하세요.
클릭 설정.
의 로그 형식 페이지에서 들어오는 로그의 스트림 유형 을(를) 선택하세요:
자동
라인
JSON
JSON 배열
XML
클릭 계속.
의 구성 페이지에서 필요한 인프라 구성 요소를 만드는 지침을 따르세요.
아래 지침은 Terraform 템플릿 사용을 기반으로 합니다. Terraform을 사용하지 않으려면 대체 문서를 따라 인프라 구성 요소 프로세스를 수동으로 완료할 수 있습니다.
2단계: GCP 클라우드에서 필요한 인프라 생성
GCP 인프라를 생성하기 전에 다음을 결정해야 합니다:
인증 방법: 다음을 사용할 수 있습니다 Google Cloud Workload Identity Federation with AWS 또는 서비스 계정—아래의 최상위 탭을 참조하세요.
생성 방법: Terraform을 사용하여 인프라를 생성하거나 GCP 콘솔에서 수동으로 생성할 수 있습니다—아래 각 최상위 탭 내의 하위 탭을 참조하세요.
구독을 생성할 때는 활성화하지 않는 것을 권장합니다 enable_exactly_once_delivery, 이는 처리량을 크게 낮추고 지연을 증가시킬 수 있습니다.
Panther가 Google Cloud 서비스 계정을(를) 사용하여 인증하기를 원하면 아래 탭 중 하나의 지침을 따르세요.
Terraform을 사용하여 GCP 인프라를 생성하려면(서비스 계정으로 인증):
의 인프라 및 자격 증명 페이지에서 서비스 계정 탭을 클릭하세요.

클릭 Terraform 템플릿 을(를) 다운로드하여 Terraform 템플릿을 받으세요.
Terraform 템플릿은 이 GitHub 링크.
에서도 찾을 수 있습니다.
panther.tfvars파일의 필드를 구성에 맞게 작성하세요.다음 값을 설정하세요
authentication_method을(를)"service_account".
로 설정하세요.
Terraform 구성 파일이 포함된 작업 디렉터리를 초기화하고.terraform init 을 실행하세요. 제공된 해당
Terraform 명령 를 복사하여 CLI에서 실행하세요. 다음으로 제공된
gcloud 명령 을 실행하세요..
서비스 계정 이메일은
수동으로 GCP 콘솔에서 생성 의 출력에서 찾을 수 있습니다.
데이터용 주제 생성
를 생성하세요.다음 형식으로gcloud
CLI 도구를 사용하여 주제를 생성할 수 있습니다: gcloud pubsub topics create $TOPIC_ID
구독 생성
를 생성하세요.다음 형식으로생성한 주제와 함께 사용할 구독을 생성하세요.
다음 형식으로
이 구독은 다른 서비스나 소스에서 사용되어서는 안 됩니다.IAM API 활성화
를 생성하세요.새 Google Cloud 서비스 계정 생성--description="DESCRIPTION" \
--display-name="DISPLAY_NAME"
계정 이메일 주소를 기록해 두세요. Panther는 이 주소를 사용해 이 GCS 통합을 위해 생성된 인프라에 접근합니다.
역할
Pub/Sub 구독과 주제가 존재하는 프로젝트에 대해 다음 권한이 필요합니다:
조건
필요한 권한들범위pubsub.subscriptions.consume
roles/pubsub.subscribersubscription-namepubsub.subscriptions.consume
pubsub.subscriptions.getroles/pubsub.viewermonitoring.timeSeries.list
roles/monitoring.viewer
pubsub.subscriptions.get프로젝트해당 권한은 선택 사항이지만 자동 확장 개선을 위해 권장됩니다.

해당 참고:
를 생성하세요.특정 리소스에 대한 권한에 조건이나 IAM 정책을 설정할 수 있습니다. 이는 서비스 계정의 IAM 페이지(아래 예시 스크린샷에서 보는 것처럼)나 특정 리소스의 페이지에서 수행할 수 있습니다.다음CLI 도구를 사용하여 권한을 생성할 수 있습니다: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"
JSON 키 파일 생성
서비스 계정용으로 생성된 JSON 키 파일은 Panther에서 GCP 인프라에 인증하는 데 사용됩니다.gcloud CLI 도구를 사용하여 JSON 키 파일을 생성하려면 다음 명령 형식을 실행하세요:
gcloud iam service-accounts keys create $KEYFILE_PATH --iam-account=$SERVICE_ACCOUNT_EMAIL 또는 위 명령을 로컬 대신 GCP 터미널에서 실행할 수 있습니다..
오른쪽 상단의 3점 아이콘 메뉴를 클릭한 다음
다운로드 또는 위 명령을 로컬 대신 GCP 터미널에서 실행할 수 있습니다..
찾아보기용 폴더 아이콘을 클릭하세요. 키 파일로 이동하여 선택한 다음을(를) 사용하여 인증하기를 원하면 아래 탭 중 하나의 지침을 따르세요.
Workload Identity Federation 인증
의 Panther가Google Cloud Workload Identity Federation Workload Identity Federation 탭을 클릭하세요.

클릭 Terraform 템플릿 을(를) 다운로드하여 Terraform 템플릿을 받으세요.
Terraform 템플릿은 이 GitHub 링크.
에서도 찾을 수 있습니다.
panther.tfvars파일의 필드를 구성에 맞게 작성하세요.다음 값을 설정하세요
authentication_method을(를)을(를) 사용하여 인증하기를 원하면.Terraform을 사용하여 GCP 인프라 구성 요소를 생성하려면(Workload Identity Federation으로 인증):
인프라 및 자격 증명 페이지,에서, "workload_identity_federation"을(를) 클릭하세요..
로 설정하세요.
Terraform 구성 파일이 포함된 작업 디렉터리를 초기화하고.terraform init 을 실행하세요. 제공된 해당
다음 값들을 제공하세요 를 복사하여 CLI에서 실행하세요. panther_workload_identity_pool_id
panther_workload_identity_pool_provider_id 을 실행하세요..
및
수동으로 GCP 콘솔에서 생성 의 출력에서 찾을 수 있습니다.
데이터용 주제 생성
를 생성하세요.다음 형식으로gcloud
CLI 도구를 사용하여 주제를 생성할 수 있습니다: gcloud pubsub topics create $TOPIC_ID
구독 생성
를 생성하세요.다음 형식으로생성한 주제와 함께 사용할 구독을 생성하세요.
다음 형식으로
panther_aws_account_id 풀을 위한 자격 증명 구성 파일을 생성하려면 제공된 을(를) 복사하여 프로젝트 번호, 풀 ID 및 공급자 ID 값을 바꾸고 CLI에서 실행하세요.
프로젝트 번호, 풀 ID 및 공급자 ID는 의 출력에서 찾을 수 있습니다.Workload Identity Federation으로 GCP 인프라 구성 요소를 GCP 콘솔에서 수동으로 생성하려면:
다음 문서를 따라 AWS와 함께 Workload Identity Federation을 구성하세요: AWS 또는 Azure와 함께 Workload Identity Federation 구성:
문서입니다.속성 매핑 및 조건을정의할 때다음 예시를 참고하세요:예시속성 매핑다음 문서를 따라 AWS와 함께 Workload Identity Federation을 구성하세요: Google:
AWS
google.subject 정의할 때 assertion.arn.extract('arn:aws:sts::{account_id}:')+":"+assertion.arn.extract('assumed-role/{role_and_session}').extract('/{session}') attribute.accountassertion.account 속성 조건 attribute.account=="<PANTHER_AWS_ACCOUNT_ID>" 해당.
속성 의 값은 127자를 초과할 수 없습니다.다음과 같은 속성 매핑 및 조건을.
--display-name="DISPLAY_NAME"
계정 이메일 주소를 기록해 두세요. Panther는 이 주소를 사용해 이 GCS 통합을 위해 생성된 인프라에 접근합니다.
역할
Pub/Sub 구독과 주제가 존재하는 프로젝트에 대해 다음 권한이 필요합니다:
조건
필요한 권한들범위pubsub.subscriptions.consume
roles/pubsub.subscribersubscription-namepubsub.subscriptions.consume
pubsub.subscriptions.getroles/pubsub.viewermonitoring.timeSeries.list
roles/monitoring.viewer
pubsub.subscriptions.get프로젝트해당 Common Expression Language (CEL) 표현식

해당 참고:
를 생성하세요.을(를) 사용하여 AWS가 발급한 토큰의 속성을 변환하거나 결합할 수 있습니다. 위 표에 제안된 표현식은 이 제한을 고려한 것이며 ARN을 Panther 엔터티를 고유하게 식별하는 값으로 변환하려는 시도입니다. AWS 속성에 대한 자세한 정보는이 AWS 문서 페이지의 "예제 2 - AssumeRole로 생성된 사용자에 의해 호출됨"을 참조하세요.아이덴티티 풀에 공급자를추가할 때다음을 선택하세요특정 리소스에 대한 권한에 조건이나 IAM 정책을 설정할 수 있습니다. 이는 GCP의 IAM 섹션(아래 예시 스크린샷에서 보는 것처럼)이나 특정 리소스의 페이지에서 수행할 수 있습니다.
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/pubsub.subscriber"
gcloud projects add-iam-policy-binding $PROJECT_ID --member="$PRINCIPAL_ID" --role="roles/pubsub.viewer" Google Cloud 서비스 계정 gcloud projects add-iam-policy-binding $PROJECT_ID --member="$PRINCIPAL_ID" --role="roles/monitoring.viewer"
자격 증명 구성 파일 다운로드 는 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에서 소스 설정 완료 인증에 를 사용 중인 경우: 아래

자격 증명 구성 파일 다운로드 인증 구성 및 JSON 키 파일 제공에서 JSON 키 파일을 업로드하세요. 다음 값을 입력하세요.
클릭 Pub/Sub 구독 ID,는 Google Cloud 계정의

구독 섹션에서 찾을 수 있습니다..
지역 엔드포인트(선택 사항) 에서 선택적으로 지역 엔드포인트
roles/monitoring.viewer 를 입력하세요. 설정 을(를) 클릭하세요. 성공 화면으로 이동합니다:선택적으로 하나 이상의

탐지 팩 키 파일로 이동하여 선택한 다음 gcloud projects add-iam-policy-binding $PROJECT_ID --member="$PRINCIPAL_ID" --role="roles/monitoring.viewer"
의 Panther가을(를) 활성화할 수 있습니다. Workload Identity Federation 탭을 클릭하세요.

자격 증명 구성 파일 다운로드 아직 하지 않았다면스키마 연결 또는 추론
gcloud iam workload-identity-pools create-cred-config projects/$PROJECT_NUMBER/locations/global/workloadIdentityPools/$POOL_ID/providers/$PROVIDER_ID --aws --output-file=config.json 을(를) 클릭하여 소스에 하나 이상의 스키마를 연결하세요. "workload_identity_federation" 이벤트가 처리되지 않을 때 경고 트리거설정 기본값을 를 사용 중인 경우: 아래

자격 증명 구성 파일 다운로드 인증 구성 및 JSON 키 파일 제공에서 JSON 키 파일을 업로드하세요. 다음 값을 입력하세요.
클릭 Pub/Sub 구독 ID,예

구독 섹션에서 찾을 수 있습니다..
지역 엔드포인트(선택 사항) 에서 선택적으로 지역 엔드포인트
roles/monitoring.viewer 를 입력하세요. 설정 을(를) 클릭하세요. 성공 화면으로 이동합니다:선택적으로 하나 이상의

로 설정합니다. 데이터가 로그 소스에서 일정 기간 후에 흐름을 멈추면 경고를 받으므로 이 설정을 활성화된 상태로 두는 것을 권장합니다. 기간은 구성 가능하며 기본값은 24시간입니다.
사용 중인 경우 아직 하지 않았다면 인증 구성 및 자격 증명 구성 파일 제공 에서 자격 증명 구성 파일을 업로드하세요. .
Last updated
Was this helpful?


