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

Terraform을 사용한 Google Cloud Pub/Sub 로그 소스 관리

Terraform에서 Google Cloud Pub/Sub 로그 소스를 코드로 관리

개요

Panther를 사용하여 Terraform에서 Google Cloud Pub/Sub 로그 소스를 정의할 수 있습니다 Terraform 제공자.

Pub/Sub 로그 소스를 만드는 다른 방법으로는 다음을 사용하는 것이 있습니다 Panther API 직접 그리고 Panther Console에서 수동으로 생성하는 것.

Terraform에서 Panther Pub/Sub 로그 소스를 정의하는 방법

다음 섹션에서는 HashiCorp 구성 언어(HCL)에서 Pub/Sub 로그 소스를 정의하는 방법을 설명합니다.

사전 요구 사항

1단계: 인증 방법 선택

  • 나열된 옵션에서 Pub/Sub 소스에 대한 인증 방법을 선택하세요 Pub/Sub 소스.

선택한 인증 방법에 따라 아래 2단계에서 정의할 변수가 결정됩니다.

2단계: 변수 정의

  • 다음을 variables.tf 아래 코드 블록에 표시된 Panther 변수가 포함된 파일을 정의하세요.

variable "panther_api_token" {
  description = "Panther API 토큰"
  type        = string
}

variable "panther_api_url" {
  description = "Panther API URL"
  type        = string
}

variable "integration_label" {
  description = "통합의 이름."
  type        = string
}

variable "credentials_type" {
  description = "사용되는 인증 방법."
  type        = string
}

variable "subscription_id" {
  description = "Google Cloud Pub/Sub 구독 ID"
  type        = string
}

// 인증 변수는 credentials_type에 따라 다릅니다. 아래 표를 참조하세요
variable "credentials" {
  description = "서비스 계정 JSON 키 또는 WIF 자격 증명 구성 파일 내용"
  type        = string
  sensitive   = true
}

variable "project_id" {
  description = "Google Cloud 프로젝트 ID (WIF에는 필수, 서비스 계정에는 선택 사항)"
  type        = string
}

// (선택 사항) 지역 엔드포인트
variable "regional_endpoint" {
  description = "Pub/Sub의 지역 엔드포인트"
  type        = string
}

// (선택 사항) log_stream_type = "JsonArray"일 때만 관련 있음
variable "json_array_envelope_field" {
  description = "JSON 배열 스트림의 봉투 필드"
  type        = string
}

// (선택 사항) log_stream_type = "XML"일 때만 관련 있음
variable "xml_root_element" {
  description = "XML 로그 스트림의 루트 요소 이름"
  type        = string
}

인증 방법별 변수

귀하의 variables.tf 파일에 다음 값을 포함하세요 추가 변수 아래 열에는 1단계에서 선택한 인증 방법에 대한 값이 있습니다.

인증 방법
credentials_type 값
추가 변수

서비스 계정 인증

service_account

credentials (JSON 키 파일 내용)

Workload Identity Federation 인증

wif

credentials (자격 증명 구성 파일 내용), project_id

3단계: 정의된 변수에 대한 값을 제공합니다

  • 하나의 *.tfvars 2단계에서 정의한 변수에 값을 할당하는 파일입니다. 이 섹션을 완료하려면 필수 구성 요소 섹션에 설명된 API URL과 토큰이 필요합니다.

    • 귀하의 panther_api_url 값은 루트 API URL이어야 합니다. 이는 다음 중 하나입니다:

      • A GraphQL API URL 다음 없이 /public/graphql 접미사

      • A REST API URL 그대로 (REST URL에는 루트 URL 뒤에 접미사가 없습니다)

4단계: Terraform 프로바이더 정의

  • 추가하세요 Panther Terraform 프로바이더를.

5단계: Panther Pub/Sub 로그 소스 정의

다음 HCL 구성은 Panther에서 Pub/Sub 로그 소스를 정의합니다.

6단계: 드롭오프 알람 구성(선택 사항)

로그 소스가 데이터 수신을 중지하면 알러트를 트리거하려면 다음을 추가하세요 panther_log_source_alarm 위에서 생성한 Pub/Sub 소스를 가리키는 리소스:

전체 인수 참조와 import 구문은 다음을 참조하세요 Terraform으로 로그 소스 알람 관리.

마지막 업데이트

도움이 되었나요?