설명
버킷의 logging 설정은 사용 로그와 저장량 로그를 별도 버킷의 파일로 전달합니다. Cloud Audit Logs와는 다른 기능이며, 이 블록이 없다고 모든 접근 기록이 없는 것은 아닙니다. API 작업 감사에는 일반적으로 Cloud Audit Logs를 우선 검토하세요.
잠재적 영향
- 필요한 접근 기록이 다른 경로에도 없으면 비정상 요청과 장애 조사가 어려울 수 있습니다.
- 사용 로그는 전달의 완전성과 적시성이 보장되지 않아 실시간 알림을 대신할 수 없습니다.
해결 방법
- 필요한 Cloud Audit Logs와 Data Access 기록을 구성하세요. 공개 객체 접근 등 사용 로그가 필요한 경우
logging.log_bucket과 로그 전달 권한을 설정하세요. - 로그 버킷의 위치·조직 및 보안 경계 요건을 확인하고, cloud-storage-analytics@google.com 그룹에 필요한 객체 생성 권한을 부여하세요. 실제 수신과 보관 및 읽기 권한을 확인하세요.
예시
버킷 이름은 실제 사용 가능한 이름으로 바꾸고 로그 버킷은 별도로 준비하세요. 원래 예제의 force_destroy = true는 객체가 남아 있어도 Terraform 삭제를 허용하므로 운영 환경에서는 별도로 검토해야 합니다.
변경 전
hcl
resource "google_storage_bucket" "example" {
name = "auto-expiring-bucket"
location = "US"
force_destroy = true
}
변경 후
hcl
resource "google_storage_bucket" "example" {
name = "auto-expiring-bucket"
location = "US"
force_destroy = true
logging {
log_bucket = "example-logs-bucket"
}
}
설명:
- 변경 전: 이 버킷에 파일 기반 로그 전달을 지정하지 않습니다. 다른 감사 로그 구성은 별도로 확인해야 합니다.
- 변경 후: 파일 기반 로그의 목적지를 지정합니다. 대상 버킷과 권한 및 실제 전달 확인이 필요합니다.