Cloud Storage 객체 버전 및 복구 설정 점검

데이터 복구 요구에 맞게 객체 버전 관리와 소프트 삭제를 구성하세요.

설명

Object Versioning은 덮어쓰거나 삭제한 라이브 객체의 이전 버전을 보존해 특정 버전을 복구하는 데 도움이 됩니다. 비활성화되어 있어도 소프트 삭제 등 다른 복구 수단이 있을 수 있으므로 실제 복구 정책을 함께 확인해야 합니다.

잠재적 영향

  • 필요한 이전 버전이나 다른 복구 수단이 없으면 잘못된 변경을 되돌리기 어려울 수 있습니다.
  • 버전 관리는 버킷 삭제를 보호하지 않으며, 권한 있는 사용자의 이전 버전 삭제도 자체적으로 막지 않습니다.

해결 방법

  • 이전 버전에 지속적으로 접근해야 하면 versioning { enabled = true }를 설정하세요. 우발적·악의적 삭제 복구에는 소프트 삭제도 검토하세요.
  • 수명 주기와 보관 정책으로 비용을 관리하고 복원을 시험하세요. 삭제 권한을 제한하고 필요한 불변성 통제는 별도로 구성하세요.

예시

설정 일부를 비교합니다. 버킷 이름을 사용 가능한 값으로 바꾸고 실제 복구 요구를 확인하세요.

변경 전

hcl
resource "google_storage_bucket" "example" {
  name     = "foo"
  location = "EU"

  versioning {
    enabled = false
  }
}

변경 후

hcl
resource "google_storage_bucket" "example" {
  name     = "foo"
  location = "EU"

  versioning {
    enabled = true
  }
}

설명:

  • 변경 전: 새 비현재 버전을 축적하지 않습니다. 소프트 삭제나 별도 백업의 적용 여부는 별도 확인이 필요합니다.
  • 변경 후: 버전 관리를 활성화합니다. 과거에 영구 삭제된 객체를 되살리거나 버킷 삭제를 방지하는 설정은 아닙니다.

참조