Azure Storage에서 미사용 데이터 암호화 구현

Azure Storage에서 미사용 데이터 암호화 구현

2025년 3월 1일

이 기술 및 교육 문서는 보안 분석가, IT 관리자 및 시스템 엔지니어가 Azure Storage에서 미사용 데이터 암호화를 구현하고 구성하도록 안내하는 것을 목표로 합니다. 저장된 데이터를 보호하는 것은 기본적인 보안 조치입니다. Azure Storage는 기본적으로 MMK(Microsoft Managed Keys)를 통해 강력한 암호화를 제공하며 Azure Key Vault를 통해 CMK(고객 관리 키)를 사용하여 더 효과적으로 제어할 수 있습니다[1].

소개

미사용 데이터를 암호화하면 저장된 데이터가 무단 액세스로부터 보호됩니다. Azure에서는 Azure Storage의 모든 데이터가 기본적으로 암호화됩니다[2]. 규정 준수 요구 사항이 엄격한 조직의 경우 CMK를 사용하면 암호화 키의 수명 주기(생성, 교체 및 취소)를 완전히 제어할 수 있으므로 필수적입니다.

이 가이드에서는 고객 관리 키 구현 및 유효성 검사에 중점을 두고 두 가지 암호화 모델의 구성을 다룹니다.

미사용 데이터 암호화가 왜 중요한가요?

  • 무단 액세스로부터 보호: 암호 해독 키 없이는 데이터를 읽을 수 없도록 보장합니다.
  • 규정 준수: LGPD, GDPR, HIPAA 등과 같은 규정을 준수하는 데 도움이 됩니다.
  • 키 제어: 조직은 CMK를 통해 암호화 키에 대한 완전한 제어를 유지합니다.

전제조건

  1. 활성 Azure 구독.
  2. 관리 액세스: 스토리지 계정 및 Key Vault를 관리할 수 있는 권한입니다.
  3. 기존 Azure Storage 계정(StorageV2 선호).
  4. CMK를 저장하기 위한 Azure Key Vault.

단계별: 암호화 구성

1. Microsoft 관리 키를 사용한 암호화(기본값)

이는 기본 및 자동 설정입니다. 확인하려면:

  1. Azure Portal에서 스토리지 계정으로 이동합니다.
  2. '보안 + 네트워크'에서 암호화를 선택합니다.
  3. 기본 '암호화 유형'이 'Microsoft 관리형 키'인지 확인하세요.

2. 고객 관리 키(CMK)를 사용한 암호화 구현

2.1. Azure Key Vault 및 키 생성

  1. Azure Key Vault를 만듭니다. 중요: 생성 중에 제거 방지를 활성화하세요.
  2. Key Vault 내에서 로 이동하고 생성/가져오기를 클릭하여 새 키(예: storage-cmk-key)를 만듭니다.

2.2. 스토리지 계정 액세스 구성

  1. 스토리지 계정으로 이동합니다.
  2. 암호화로 이동하여 '암호화 유형'을 '고객 관리 키'로 변경합니다.
  3. Key Vault의 키를 사용하는 옵션을 선택합니다. 이렇게 하면 Azure에서 스토리지 계정에 대한 관리 ID를 만들라는 메시지를 표시합니다. 허용하다.
  4. 이제 Key Vault로 돌아가서 액세스 정책으로 이동합니다.
  5. 새 액세스 정책을 생성합니다. 'Get', 'Wrap Key' 및 'Unwrap Key' 키 권한을 부여합니다.
  6. '보안 주체' 단계에서 스토리지 계정에 대한 관리 ID를 검색하고 선택합니다.
  7. 액세스 정책을 저장합니다.

2.3. CMK를 사용하도록 스토리지 계정 구성

  1. 스토리지 계정의 암호화 페이지로 돌아갑니다.
  2. Key Vault와 생성한 키를 선택합니다.
  3. 변경 사항을 저장합니다. 이제부터 계정에 기록된 모든 데이터는 귀하의 키로 암호화됩니다.

검증 및 테스트

1. 데이터 액세스 테스트

CMK를 구성한 후 파일을 업로드하고 다운로드합니다. 작업은 투명해야 합니다.

``배쉬

테스트 파일 로드

az Storage Blob upload --account-name -c -n "test.txt" -f "local/path/to/test.txt" --auth-mode login

테스트 파일 다운로드

az Storage Blob download --account-name -c -n "test.txt" -f "local/path/to/downloaded.txt" --auth-mode login ````

2. 키 액세스 취소 테스트

이는 CMK에 대한 가장 중요한 테스트입니다.

  1. Key Vault에서 사용 중인 키로 이동합니다.
  2. 현재 키 버전을 클릭하고 활성화 설정을 아니요로 변경합니다.
  3. 몇 분 정도 기다립니다.
  4. 스토리지 계정의 데이터에 액세스해 보세요(예: Blob을 다시 다운로드해 보세요).
  5. 예상 결과: 액세스 거부 오류(403 Forb)로 인해 작업이 실패해야 합니다.idden), 이는 귀하가 데이터 액세스를 완전히 제어할 수 있음을 증명합니다.
  6. 액세스를 복원하려면 키를 다시 활성화하는 것을 잊지 마세요.

키 순환

키 순환은 필수적인 보안 관행입니다. CMK에는 두 가지 옵션이 있습니다.

  • 수동 회전: Key Vault에서 새 버전의 키를 만들고 새 버전을 가리키도록 스토리지 계정의 암호화 구성을 업데이트합니다.
  • 자동 교체: 스토리지 계정에서 CMK를 구성할 때 키 버전을 지정하지 마세요. 스토리지 계정은 Key Vault를 주기적으로 확인하고 자동으로 최신 버전의 키를 사용합니다[3].

모범 사례

  • Key Vault에서 초기화 보호 및 소프트 삭제를 활성화하여 실수로 또는 악의적으로 삭제되지 않도록 키를 보호하세요.
  • 관리 ID를 사용하여 스토리지 계정이 Key Vault에 액세스하도록 허용합니다. 다른 방법을 사용하는 것보다 안전합니다.
  • Key Vault 활동 모니터링: Key Vault 진단 로그를 사용하여 누가 언제 키에 액세스하는지 감사합니다.
  • 보안 전송 필요(HTTPS): 스토리지 계정을 설정할 때 항상 전송 중인 데이터를 암호화하기 위해 보안 전송을 요구합니다.

결론

Azure Storage에 저장된 데이터를 암호화하는 것은 기본적인 방어 계층입니다. Microsoft 관리 키는 기본적으로 아무런 노력 없이 보안을 제공하지만, 고객 관리 키(CMK)는 많은 조직에서 엄격한 보안 및 규정 준수 요구 사항을 충족하는 데 필요한 수준의 제어 및 보증을 제공합니다. CMK 구현 및 관리를 마스터하면 데이터를 보호하고 통제할 수 있습니다.

참고자료

[1] 마이크로소프트. (2023). Azure Storage 암호화 개요. [2] 마이크로소프트. (2023). 미사용 데이터에 대한 Azure Storage Service 암호화. [3] 마이크로소프트. (2023). Azure Storage 암호화를 위한 고객 관리형 키.