Terraform으로 AWS S3 로그 소스 관리하기
Terraform에서 S3 로그 소스를 코드로 관리하기
개요
Panther S3 로그 소스를 Terraform에서 완전히 정의할 수 있습니다—즉, AWS에서 S3 버킷 및 관련 인프라를 생성하고 Panther 인스턴스에 온보딩할 수 있습니다. Panther는 Terraform 제공자.
S3 로그 소스를 생성하는 다른 방법에는 Panther API 사용 직접 및 Panther 콘솔에서 수동 생성.
Terraform에서 Panther S3 로그 소스를 정의하는 방법
다음 섹션에서는 HashiCorp 구성 언어(HCL)로 S3 로그 소스를 정의하는 방법을 설명합니다. AWS와 Panther 인프라를 모두 HCL로 정의하게 됩니다.
Panther에서 처음 생성하는 로그 소스는 Panther 콘솔에서 수행해야 합니다. Terraform을 사용하여 첫 번째 Panther 로그 소스를 설정하면 다음에 자세히 설명된 "승인 대기(pending confirmation)" 문제가 발생할 수 있습니다. 이 지식 기반 문서.
전제 조건
시작하기 전에
로그 소스 관리(Manage Log Sources)권한이 있는 API URL과 토큰이 있는지 확인하십시오. 이는 2단계.완료하는 데 필요합니다 필요한 경우 Panther 콘솔에서 API 토큰을 생성하는.
1단계: 변수 정의
생성합니다
variables.tf파일에 다음 AWS 및 Panther 변수를 포함합니다:
variable "aws_account_id" {
type = string
description = "템플릿이 배포되는 AWS 계정 ID"
}
variable "panther_aws_account_id" {
type = string
description = "귀하의 Panther 인스턴스가 속한 AWS 계정 ID"
}
variable "panther_aws_region" {
type = string
default = "us-east-1"
description = "Panther 인스턴스가 배포된 리전"
}
variable "panther_aws_partition" {
type = string
default = "aws"
description = "Panther 백엔드를 실행하는 계정의 AWS 파티션(예: aws, aws-cn 또는 aws-us-gov)"
}
variable "s3_bucket_name" {
type = string
description = "온보딩할 S3 버킷 이름"
}
variable "log_source_name" {
type = string
description = "Panther에서 생성될 로그 소스의 이름"
}
variable "panther_api_token" {
type = string
}
variable "panther_api_url" {
type = string
}2단계: 정의한 변수에 값 제공
다음
*.tfvars파일을 추가하여 1단계에서 정의한 변수에 값을 할당합니다. 이 섹션을 완료하려면 앞의 사전 요구 사항(Prerequisite) 섹션에 설명된 API URL과 토큰이 필요합니다.비공개 리포지토리에 접근하는 데 사용되는 개인 액세스 토큰
panther_api_url값은 루트 API URL이어야 합니다. 이는 다음 중 하나입니다:A GraphQL API URL 다음 없이
/public/graphql접미사A REST API URL 그대로(REST URL은 루트 URL 뒤에 접미사가 없습니다)
3단계: Terraform 제공자 정의
4단계: AWS 인프라 정의
AWS에서는 S3 버킷과 SNS 주제를 생성해야 합니다. S3 버킷에서 로그를 수집하려면 객체 생성 시 버킷이 SNS 주제로 알림을 기록해야 합니다. 해당 주제에 대한 구독이 있어야 객체 정보를 Panther의 입력 큐로 전달할 수 있습니다.

S3 버킷 정의
다음 HCL 구성은 S3 버킷과 해당 콘텐츠에 액세스하기 위한 관련 IAM 역할을 정의합니다. 이 역할은 들어오는 로그를 읽기 위해 Panther 인스턴스가 맡게 되므로 S3 버킷에 대한 읽기 권한이 필요합니다.
SNS 주제 정의
다음 HCL 구성은 S3 버킷 알림을 활성화하기 위한 SNS 주제와 관련 정책을 생성합니다. 또한 Panther의 입력 데이터 알림 큐로 메시지를 전달하기 위한 구독을 생성합니다.
동일한 SNS 주제는 여러 S3 버킷 통합에 사용할 수 있습니다.
5단계: Panther S3 로그 소스 정의
다음 HCL 구성은 Panther에서 S3 로그 소스를 정의합니다.
Last updated
Was this helpful?

