Azure Storage 계정 기준 만들기

완료됨

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

Azure Storage 계정 보안 권장 사항

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

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

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

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

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

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

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

  5. 설정을 변경하는 경우 메뉴 모음의 저장을 선택합니다.

Screenshot that shows the secure transfer storage setting in the Azure portal.

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

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

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

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

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

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

Screenshot that shows secure storage encryption is automatically enabled.

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

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

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

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

  3. 왼쪽 메뉴 창에서 활동 로그를 선택합니다.

  4. 활동 로그Timespan 드롭다운에서 사용자 지정을 선택합니다. 시작 시간종료 시간을 선택하여 90일 이하의 범위를 만듭니다.

  5. 적용을 선택합니다.

    Screenshot that shows the storage account timespan setting.

    Azure Key Vault를 키 회전과 함께 사용하지 않는 경우 특정 스토리지 계정의 스토리지 액세스 키를 다시 생성하려면 구독에 대한 정보를 사용하여 다음을 명령을 실행합니다.

    POST https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/regenerateKey?api-version=2019-04-01
    
  6. 설정을 변경하는 경우 메뉴 모음의 저장을 선택합니다.

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

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

참고

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

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

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

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

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

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

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

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

  6. 설정을 변경하는 경우 메뉴 모음에서 SAS 및 연결 문자열 생성을 선택합니다.

Screenshot of a shared access signature in a storage account settings and H T T P S only protocol allowed.

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

Azure Files 암호화 사용 - 수준 1

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

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

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

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

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

Screenshot that shows encryption is automatically enabled for all blobs and files in storage accounts.

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

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

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

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

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

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

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

  5. 설정을 변경하는 경우 메뉴 모음의 저장을 선택합니다.

Screenshot that shows a storage container with access level set to private.