Azure Storage 계정 기준 만들기

완료됨

Azure Storage 계정은 Azure Storage 데이터 개체를 저장 및 액세스할 수 있는 고유한 네임스페이스를 제공합니다.

Azure Storage 계정 보안 권장 사항

다음 섹션에서는 CIS Microsoft Azure Foundations 보안 벤치마크 v.3.0.0에 있는 Azure Storage 권장 사항을 설명합니다. 각 권장 사항에는 Azure Portal에서 완료해야 하는 기본 단계가 포함되어 있습니다. 자신의 구독에 대해 이러한 단계를 완료하고 자신의 리소스를 사용하여 각 보안 권장 사항의 유효성을 검사해야 합니다. 수준 2 옵션은 일부 기능이나 작업을 제한할 수 있으므로, 적용할 보안 옵션을 신중하게 고려해야 합니다.

보안이 강화된 전송 요구 - 수준 1

이는 Azure Storage 데이터의 보안을 유지하기 위해 수행해야 하는 단계이며, 클라이언트와 Azure Storage 간에 데이터를 암호화합니다. 첫 번째 권장 사항은 항상 HTTPS 프로토콜을 사용하는 것입니다. HTTPS를 사용하면 퍼블릭 인터넷을 통한 통신을 보호합니다. 스토리지 계정의 개체에 액세스하기 위한 REST API를 호출할 때 HTTPS 사용을 적용하려면 스토리지 계정에 대해 보안 전송 필요 옵션을 켭니다. 이 컨트롤을 켜면 HTTP를 사용하는 연결이 거부됩니다. 구독의 각 스토리지 계정에 대해 다음 단계를 완료합니다.

  1. Azure Portal에 로그인합니다. 스토리지 계정을 검색하여 선택합니다.

  2. 스토리지 계정 창에서 스토리지 계정을 선택합니다.

  3. 왼쪽 메뉴의 설정 아래에서 구성을 선택합니다.

  4. 구성 창에서 보안 전송 필요사용으로 설정되어 있는지 확인합니다.

  5. 설정을 변경하려면 메뉴 모음에서 저장을 선택합니다.

Azure Portal의 보안 전송 스토리지 설정을 보여주는 스크린샷

BLOB(Binary Large Object) 암호화 사용 - 수준 1

Azure Blob Storage는 Microsoft의 클라우드용 개체 스토리지 솔루션입니다. Blob Storage는 대량의 비구조적 데이터를 저장하는 데 사용됩니다. 비구조적 데이터는 특정 데이터 모델 또는 정의를 따르지 않는 데이터입니다. 비구조적 데이터의 예에는 텍스트 및 이진 데이터가 있습니다. 스토리지 서비스 암호화는 미사용 데이터를 보호합니다. Azure Storage는 데이터 센터에서 작성되는 데이터를 암호화하고, 사용자가 데이터에 액세스할 때 자동으로 데이터 암호를 해독합니다.

  1. Azure Portal에 로그인합니다. 스토리지 계정을 검색하여 선택합니다.

  2. 스토리지 계정 창에서 스토리지 계정을 선택합니다.

  3. 보안 + 네트워킹의 왼쪽 메뉴에서 암호화를 선택합니다.

  4. 암호화 창에서 Azure Storage 암호화는 모든 신규 및 기존 스토리지 계정에 대해 사용하도록 설정되며 사용하지 않도록 설정할 수 없습니다.

보안 스토리지 암호화가 자동으로 활성화됨을 보여 주는 스크린샷.

주기적으로 액세스 키 다시 생성 - 수준 1

Azure에 스토리지 계정을 만들 때 Azure는 두 개의 512비트 스토리지 액세스 키를 생성합니다. 이 두 키는 스토리지 계정에 액세스할 때 인증에 사용됩니다. 키를 주기적으로 회전하면 이러한 키에 대한 의도하지 않은 액세스나 노출을 시간별로 제한할 수 있습니다. Azure 구독의 각 스토리지 계정에 대해 다음 단계를 완료합니다.

  1. Azure Portal에 로그인합니다. 스토리지 계정을 검색하여 선택합니다.

  2. 스토리지 계정 창에서 스토리지 계정을 선택합니다.

  3. 왼쪽 메뉴에서 보안 + 네트워킹을 선택한 다음 액세스 키를 선택합니다.

  4. 각 키의 마지막 회전 날짜를 검토합니다.

    스토리지 계정 키의 마지막 회전 날짜를 보여 주는 스크린샷.

    키 회전과 함께 Azure Key Vault를 사용하지 않는 경우 키 회전 단추를 선택하여 액세스 키를 수동으로 회전할 수 있습니다.

공유 액세스 서명 토큰이 1시간 이내에 만료되도록 요구 - 수준 1

공유 액세스 서명은 Azure Storage 리소스에 대한 제한된 액세스 권한을 부여하는 URI입니다. 스토리지 계정 키로 신뢰하지는 않아야 하지만 특정 스토리지 계정 리소스에 대한 액세스를 위임하려는 클라이언트에게 공유 액세스 서명을 제공할 수 있습니다. 이 클라이언트에게 공유 액세스 서명 URI를 배포하여 지정된 기간 동안, 지정된 사용 권한 집합으로 리소스에 액세스하도록 허용할 수 있습니다.

참고 항목

CIS Microsoft Azure Foundations Security Benchmark v.3.0.0의 권장 사항의 경우, 공유 액세스 서명 토큰 만료 시간을 자동으로 확인할 수 없습니다. 권장 사항에는 수동 확인이 필요합니다.

공유 액세스 서명 토큰이 HTTPS만을 통해 공유되도록 요구 - 수준 1

HTTPS 프로토콜을 통해서만 공유 액세스 서명 토큰을 허용해야 합니다. Azure 구독의 각 스토리지 계정에 대해 다음 단계를 완료합니다.

  1. Azure Portal에 로그인합니다. 스토리지 계정을 검색하여 선택합니다.

  2. 스토리지 계정 창에서 스토리지 계정을 선택합니다.

  3. 보안 + 네트워킹의 메뉴에서 공유 액세스 서명을 선택합니다.

  4. 공유 액세스 서명 창의 시작 및 만료 날짜/시간 아래에서 시작종료 날짜 및 시간을 설정합니다.

  5. 허용되는 프로토콜에서 HTTPS만을 선택합니다.

  6. 설정을 변경하는 경우 화면 하단의 SAS 및 연결 문자열 생성 단추를 선택합니다.

스토리지 계정 설정에 있는 공유 액세스 서명 및 허용된 HTTPS 전용 프로토콜의 스크린샷.

다음 섹션에서 공유 액세스 서명 기능을 구성합니다.

Azure Files 암호화 사용 - 수준 1

Azure Disk Encryption은 IaaS VM에서 OS 및 데이터 디스크를 암호화합니다. 클라이언트 쪽 암호화 및 SSE(서버 쪽 암호화)가 모두 Azure Storage의 데이터를 암호화하는 데 사용됩니다. Azure 구독의 각 스토리지 계정에 대해 다음 단계를 완료합니다.

  1. Azure Portal에 로그인합니다. 스토리지 계정을 검색하여 선택합니다.

  2. 스토리지 계정 창에서 스토리지 계정을 선택합니다.

  3. 보안 + 네트워킹의 왼쪽 메뉴에서 암호화를 선택합니다.

  4. 암호화 창에서 Azure Storage 암호화는 모든 신규 및 기존 Blob Storage 및 파일 스토리지에 대해 사용하도록 설정되며 사용하지 않도록 설정할 수 없습니다.

스토리지 계정의 모든 Blob 및 파일에 대해 암호화가 자동으로 설정 됨을 보여 주는 스크린샷.

Blob 컨테이너에 대한 프라이빗 액세스만 요구 - 수준 1

컨테이너 및 Azure Blob Storage의 해당 BLOB에 대해 익명의 퍼블릭 읽기 권한을 사용하도록 설정할 수 있습니다. 익명의 퍼블릭 읽기 권한을 켜면 계정 키를 공유하지 않아도 공유 액세스 서명을 요구하지 않고 리소스에 대한 읽기 전용 권한을 부여할 수 있습니다. 기본적으로, 컨테이너와 컨테이너 내의 모든 Blob은 적절한 권한이 부여된 사용자만 액세스할 수 있습니다. 익명 사용자에게 컨테이너와 해당 Blob에 대한 읽기 권한을 부여하려면 컨테이너 액세스 수준을 퍼블릭으로 설정할 수 있습니다.

그러나 컨테이너에 대한 퍼블릭 액세스 권한을 부여하면 익명 사용자가 요청이 승인되지 않아도 공개적으로 액세스 가능한 컨테이너 내의 BLOB을 읽을 수 있습니다. 보안 권장 사항은 스토리지 컨테이너에 대한 액세스를 대신 프라이빗으로 설정하는 것입니다. Azure 구독의 각 스토리지 계정에 대해 다음 단계를 완료합니다.

  1. Azure Portal에 로그인합니다. 스토리지 계정을 검색하여 선택합니다.

  2. 스토리지 계정 창에서 스토리지 계정을 선택합니다.

  3. 데이터 스토리지의 왼쪽 메뉴에서 컨테이너를 선택합니다.

  4. 컨테이너 창에서 퍼블릭 액세스 수준프라이빗으로 설정되어 있는지 확인합니다.

액세스 수준이 프라이빗으로 설정된 스토리지 컨테이너를 보여 주는 스크린샷.