다음을 통해 공유


방화벽 및 VNet 뒤로 액세스할 수 있는 스토리지 계정에 취약성 평가 검사 결과 저장

적용 대상: Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics

특정 VNet 또는 서비스에 대해 Azure에서 스토리지 계정에 대한 액세스를 제한하는 경우 SQL Database 또는 Azure SQL Managed Instances에 대한 VA(취약성 평가) 검색이 해당 스토리지 계정에 액세스할 수 있도록 적절한 구성을 사용해야 합니다.

참고 항목

빠른 구성을 사용할 때는 이 설정이 필요하지 않습니다.

필수 조건

SQL 취약성 평가 서비스는 기본 및 검사 결과를 저장하기 위해 스토리지 계정에 대한 권한이 필요합니다.

SQL Server 관리 ID 사용:

  • SQL Server에 관리 ID가 있어야 합니다.
  • 스토리지 계정에 Storage Blob 데이터 기여자로 SQL 관리 ID에 대한 역할 할당이 있어야 합니다.
  • 설정을 적용하면 VA 필드 storageContainerSasKey 및 storageAccountAccessKey가 비어 있어야 합니다(이 시나리오에서는 스토리지 계정 키 또는 스토리지 SAS 키를 사용하는 구성은 유효하지 않음).

Azure Portal을 사용하여 SQL VA 설정을 저장하는 경우 Azure는 관리 ID에 대한 새 역할 할당을 스토리지에 Storage Blob 데이터 기여자로 할당할 수 있는 권한이 있는지 확인합니다. 권한이 할당된 경우 Azure는 SQL Server 관리 ID를 사용하고 그렇지 않으면 Azure에서 키 메서드(이 시나리오에서 지원되지 않음)를 사용합니다.

참고 항목

  1. 사용자가 할당한 관리 ID는 이 시나리오에서 지원되지 않습니다.
  2. Azure Storage 수명 주기 관리 정책을 사용하는 경우 VA에서 사용하는 컨테이너의 파일을 보관 액세스 계층으로 이동하지 마세요. 보관 액세스 계층에 저장된 검사 결과 또는 기준 구성 읽기는 지원되지 않습니다.

스토리지 계정에 대한 Azure SQL Database VA 검사 액세스 사용

특정 네트워크 또는 서비스에서만 액세스할 수 있도록 VA 스토리지 계정을 구성한 경우 Azure SQL Database에 대한 VA 검사에서 스토리지 계정에 검색을 저장할 수 있는지 확인해야 합니다. 기존 스토리지 계정을 사용하거나 새 스토리지 계정을 만들어 논리 SQL 서버의 모든 데이터베이스에 대한 VA 검사 결과를 저장할 수 있습니다.

참고

취약성 평가 서비스는 스토리지 액세스 키가 필요한 경우 방화벽 또는 VNet으로 보호되는 스토리지 계정에 액세스할 수 없습니다.

스토리지 계정이 포함된 리소스 그룹으로 이동하고 스토리지 계정 창에 액세스합니다. 설정에서 방화벽 및 가상 네트워크를 선택합니다.

이 스토리지 계정에 대한 신뢰할 수 있는 Microsoft 서비스 허용이 선택되어 있는지 확인합니다.

신뢰할 수 있는 Microsoft 서비스가 이 스토리지 계정에 액세스하도록 허용이 선택된 방화벽 및 가상 네트워크 대화 상자를 보여 주는 스크린샷.

사용 중인 스토리지 계정을 확인하려면 다음 단계를 수행합니다.

  1. Azure Portal에서 SQL Server 창으로 이동합니다.
  2. 보안에서 클라우드용 Defender를 선택합니다.
  3. 구성을 선택합니다.

설치 취약성 평가를 보여 주는 스크린샷.

방화벽 또는 VNet 뒤에서 액세스할 수 있는 스토리지 계정에 Azure SQL Managed Instance에 대한 VA 검사 결과를 저장합니다.

Azure SQL Managed Instance는 신뢰할 수 있는 Microsoft 서비스가 아니며 스토리지 계정과 다른 VNet을 가지고 있기 때문에 VA 검사를 실행하면 오류가 발생합니다.

참고 항목

Azure SQL Managed Instances가 2022년 11월 기능 웨이브에 등록되었는지 확인하는 것이 좋습니다. 그러면 스토리지 계정이 방화벽 또는 VNET 뒤에 있을 때 SQL 취약성 평가를 훨씬 더 간단하게 구성할 수 있습니다.

2022년 11월 기능 웨이브를 설치한 Azure SQL Managed Instance에서 VA 스캔을 지원하려면 다음 단계를 수행합니다.

  1. Azure SQL Managed Instance의 개요 페이지에서 가상 네트워크/서브넷 아래의 값을 기록합니다.

  2. SQL VA가 스캔 결과를 저장하도록 구성된 스토리지 계정의 네트워킹 페이지로 이동합니다.

  3. 방화벽 및 가상 네트워크 탭의 공용 네트워크 액세스에서 선택한 가상 네트워크 및 IP 주소에서 사용을 선택합니다.

  4. 가상 네트워크 섹션에서 기존 가상 네트워크 추가를 클릭하고 첫 번째 단계에서 기록한 관리형 인스턴스에서 사용하는 VNET 및 서브넷을 선택합니다.

    Nov22 기능 웨이브(이상)에 대한 스토리지 계정 네트워킹 설정의 스크린샷.

2022년 11월 기능 웨이브를 설치하지 않은 Azure SQL Managed Instance에서 VA 스캔을 지원하려면 다음 단계를 수행합니다.

  1. SQL 관리 인스턴스 창의 개요 제목 아래에서 가상 네트워크/서브넷 링크를 클릭합니다. 그러면 가상 네트워크 창으로 이동합니다.

    SQL Managed Instance 개요 섹션의 스크린샷.

  2. 설정에서 서브넷을 선택합니다. 새 창에서 + 서브넷을 클릭하여 새 서브넷을 추가합니다. 자세한 내용은 서브넷 관리를 참조하세요.

    스크린샷은 서브넷 목록과 서브넷 추가 옵션을 보여줍니다.

  3. 기본 관리형 인스턴스 서브넷의 인스턴스에서 Azure Resource Manager로의 트래픽은 인터넷을 통해 라우팅되어야 합니다. 따라서 다음 홉이 인터넷이고 대상 태그가 Azure Resource Manager 주소 범위에 적합한 UDR 태그인 경로는 관리형 인스턴스가 있는 서브넷에 할당되어야 합니다. 이 경로는 새 배포에 자동으로 추가되지만 제거된 경우 다시 추가해야 합니다.

    필요한 경로를 보여주는 스크린샷.

  4. 새 서브넷에는 다음 구성이 있어야 합니다.

    스크린샷은 VA라는 서브넷 및 해당 설정을 보여줍니다.

    • NAT 게이트웨이: 없음
    • 네트워크 보안 그룹: 없음
    • 경로 테이블: 없음
    • 서비스 엔드포인트 - 서비스: 선택된 항목 없음
    • 서브넷 위임 - 서비스에 서브넷 위임: 없음
    • 프라이빗 엔드포인트에 대한 네트워크 정책 - 프라이빗 엔드포인트 네트워크 정책: 선택된 항목 없음
  5. SQL VA가 스캔 결과를 저장하도록 구성된 스토리지 계정으로 이동하고 프라이빗 엔드포인트 연결 탭을 클릭한 다음, + 프라이빗 엔드포인트를 클릭합니다.

    스크린샷은 방화벽 및 가상 네트워크 설정을 보여줍니다.

    스크린샷은 프라이빗 엔드포인트 추가 단추를 보여줍니다.

  6. 프라이빗 엔드포인트에 대한 세부 정보를 선택합니다(동일한 RG 및 동일한 지역에 배치하는 것이 좋음).

    스크린샷은 프라이빗 엔드포인트 만들기 기본 사항 탭을 보여줍니다.

  7. 대상 하위 리소스Blob를 선택합니다.

    스크린샷은 프라이빗 엔드포인트 만들기의 리소스 탭을 보여줍니다.

  8. 1단계의 SQL MI 가상 네트워크를 선택하고 3단계에서 생성한 서브넷을 선택합니다.

    스크린샷은 프라이빗 엔드포인트 만들기, Virtual Network 탭을 보여줍니다.

  9. 프라이빗 DNS 영역과 통합을 선택하고(기본값이어야 함) 다른 기본값을 선택합니다.

    스크린샷은 프라이빗 엔드포인트 만들기 DNS 탭을 보여줍니다.

  10. 계속해서 검토 + 만들기 탭에서 만들기를 클릭합니다. 배포가 완료되면 스토리지 계정의 네트워크 섹션 아래에 있는 프라이빗 엔드포인트 연결 탭에 이 항목이 표시됩니다.

    스크린샷은 구성 후 스토리지 네트워킹 프라이빗 엔드포인트 연결을 보여줍니다.

이제 스토리지 계정에 Azure SQL Managed Instance에 대한 VA 검사를 저장할 수 있습니다.

취약성 평가 검사와 관련된 일반적인 문제를 해결합니다.

취약성 평가 설정을 저장하지 못함

스토리지 계정이 일부 필수 구성을 충족하지 않거나 권한이 부족한 경우 취약성 평가 설정에 대한 변경 내용을 저장하지 못할 수 있습니다.

스토리지 계정 요구 사항

취약성 평가 검사 결과를 저장하는 스토리지 계정은 다음 요구 사항을 충족해야 합니다.

  • 유형: StorageV2(범용 V2) 또는 스토리지(범용 V1)
  • 성능: Standard(전용)
  • 지역: Azure SQL Server의 인스턴스와 동일한 지역에 스토리지가 있어야 합니다.

이러한 요구 사항이 충족되지 않으면 취약성 평가 설정에 대한 변경 내용 저장이 실패합니다.

권한

취약성 평가 설정에 대한 변경 내용을 저장하려면 다음 권한이 필요합니다.

  • SQL 보안 관리자
  • Storage Blob 데이터 읽기 권한자
  • 스토리지 계정에 대한 소유자 역할

새 역할 할당을 설정하려면 스토리지 계정에 대한 소유자 또는 사용자 관리자 액세스 권한과 다음 권한이 필요합니다.

  • Storage Blob 데이터 소유자

취약성 평가 설정에서 스토리지 계정을 선택할 수 없습니다.

스토리지 계정은 다음과 같은 여러 가지 이유로 스토리지 계정 선택기에 표시되지 않을 수 있습니다.

  • 찾고 있는 스토리지 계정이 선택한 구독에 없습니다.
  • 찾고있는 스토리지 계정이 Azure SQL Server 인스턴스와 동일한 지역에 없습니다.
  • 스토리지 계정에 대한 Microsoft.Storage/storageAccounts/read 권한이 없습니다.

필요한 권한이 없거나 검색 결과 열기 또는 표시를 지원하지 않는 브라우저를 사용하는 경우 검색 결과에 대한 알림 이메일의 링크를 열거나 검사 결과를 볼 수 없습니다.

필요한 사용 권한

검사 결과에 대한 이메일 알림의 링크를 열거나 검사 결과를 보려면 다음 권한이 필요합니다.

  • SQL 보안 관리자
  • Storage Blob 데이터 읽기 권한자

브라우저 요구 사항

Firefox 브라우저는 검사 결과 보기 열기 또는 표시를 지원하지 않습니다. Microsoft Edge 또는 Chrome을 사용하여 취약성 평가 검사 결과를 보는 것이 좋습니다.

다음 단계