다음을 통해 공유


BYOS(Bring Your Own Storage) 음성 리소스 설정

BYOS(Bring Your Own Storage)는 데이터 보안 및 개인 정보 보호에 대한 요구 사항이 높은 고객을 위한 Azure AI 기술입니다. 기술의 핵심은 사용자가 음성 리소스를 소유하고 완전히 제어하는 Azure Storage 계정을 연결하는 기능입니다. 그런 다음 음성 리소스는 일반적인 경우처럼 음성 서비스 구내에 동일한 아티팩트를 저장하는 대신 이 스토리지 계정을 사용하여 사용자 데이터 처리와 관련된 다양한 아티팩트를 저장합니다. 이 접근 방식을 사용하면 고객 관리 키로 데이터 암호화, 프라이빗 엔드포인트를 사용하여 데이터에 액세스 등을 포함하여 Azure Storage 계정의 모든 보안 기능 세트를 사용할 수 있습니다.

BYOS 시나리오에서 Speech 리소스와 Storage 계정 간의 모든 트래픽은 Azure 글로벌 네트워크를 사용하여 유지 관리됩니다. 즉, 모든 통신은 공용 인터넷을 완전히 우회하여 개인 네트워크를 사용하여 수행됩니다. BYOS 시나리오의 음성 리소스는 Azure Trusted Services 메커니즘을 사용하여 Storage 계정에 액세스하고 인증 방법으로 시스템 할당 관리 ID를 사용하며 역할 기반 액세스 제어(RBAC)를 권한 부여 방법으로 사용합니다.

한 가지 예외가 있습니다. 텍스트 음성 변환을 사용하고 음성 리소스 및 연결된 Storage 계정이 다른 Azure 지역에 있는 경우 사용자 위임 SAS와 관련된 작업에 공용 인터넷이 사용됩니다. 이 섹션의 세부 정보를 참조하세요.

BYOS는 여러 Azure AI 서비스와 함께 사용할 수 있습니다. 음성의 경우 다음 시나리오에서 사용할 수 있습니다.

음성 텍스트 변환

텍스트 음성 변환

하나의 음성 리소스 – Storage 계정 조합은 모든 조합에서 네 가지 시나리오 모두에 동시에 사용할 수 있습니다.

이 문서에서는 BYOS 지원 음성 리소스를 만들고 유지 관리하는 방법과 언급된 모든 시나리오에 적용 가능한 방법을 설명합니다. 해당 문서에서 시나리오별 정보를 참조하세요.

BYOS 지원 음성 리소스: 기본 규칙

BYOS 지원 음성 리소스 구성을 계획할 때 다음 규칙을 고려하세요.

  • 음성 리소스는 생성 중에만 BYOS를 사용할 수 있습니다. 기존 음성 리소스를 BYOS 지원으로 변환할 수 없습니다. BYOS 지원 음성 리소스는 "기존"(비BYOS) 리소스로 변환할 수 없습니다.
  • 음성 리소스와의 Storage 계정 연결은 음성 리소스 생성 중에 선언됩니다. 나중에 변경할 수 없습니다. 즉, 기존 BYOS 지원 음성 리소스와 연결된 Storage 계정을 변경할 수 없습니다. 다른 Storage 계정을 사용하려면 다른 BYOS 지원 음성 리소스를 만들어야 합니다.
  • BYOS 지원 음성 리소스를 만들 때 기존 Storage 계정을 사용하거나 음성 리소스 프로비전 중에 자동으로 계정을 만들 수 있습니다(후자는 Azure portal을 사용하는 경우에만 유효함).
  • 하나의 Storage 계정은 여러 음성 리소스와 연결될 수 있습니다. 음성 리소스 하나당 하나의 Storage 계정을 사용하는 것이 좋습니다.
  • Storage 계정 및 관련 BYOS 지원 음성 리소스는 동일하거나 다른 Azure 지역에 있을 수 있습니다. 지연 시간을 최소화하려면 동일한 리전을 사용하는 것이 좋습니다. 같은 이유로 다중 지역 구성을 위해 너무 멀리 떨어진 지역을 선택하지 않는 것이 좋습니다. (예를 들어 미국 동부에 Storage 계정을 배치하고 서유럽에 관련 음성 리소스를 배치하지 않는 것이 좋습니다.)

BYOS 지원 음성 리소스 생성 및 구성

이 섹션에서는 BYOS 지원 음성 리소스를 만드는 방법을 설명합니다.

Azure 구독을 위해 BYOS에 대한 액세스를 요청하세요.

사용하려는 각 Azure 구독에 대해 BYOS 기능에 대한 액세스를 요청해야 합니다. 액세스를 요청하려면 Cognitive Services 및 응용 AI 고객 관리 키 및 BYOD(Bring Your Own Storage) 액세스 요청 양식을 작성하여 제출하세요. 요청이 승인될 때까지 기다립니다.

(선택 사항) Azure 구독에 BYOS에 대한 액세스 권한이 있는지 확인

Azure 구독에 BYOS에 대한 액세스 권한이 있는지 여부를 빠르게 확인할 수 있습니다. 이 검사는 Azure의 미리 보기 기능 기능을 사용합니다.

이 기능은 Azure Portal을 통해 사용할 수 없습니다.

참고 항목

이 문서에서 설명한 대로 해당 Azure 구독의 미리 보기 기능 목록은 볼 수 있지만 BYOS를 비롯한 모든 미리 보기 기능이 이러한 방식으로 표시되는 것은 아닙니다.

Storage 계정 계획 및 준비

Azure portal을 사용하여 BYOS 지원 음성 리소스를 만드는 경우 연결된 Storage 계정이 자동으로 생성될 수 있습니다. 다른 모든 프로비전 방법(Azure CLI, PowerShell, REST API 요청)의 경우 기존 Storage 계정을 사용해야 합니다.

기존 Storage 계정을 사용하고 BYOS 지원 음성 리소스 프로비저닝에 Azure portal 방법을 사용하지 않으려는 경우 이 Storage 계정과 관련하여 다음 사항에 유의하세요.

  • Storage 계정의 전체 Azure 리소스 ID가 필요합니다. 이를 얻으려면 Azure portal에서 Storage 계정으로 이동한 다음 설정 그룹에서 Endpoints 메뉴를 선택합니다. Storage 계정 리소스 ID 필드의 값을 복사하여 저장합니다.
  • BYOS를 완전히 구성하려면 선택한 Storage 계정에 대해 최소한 리소스 소유자 권한이 필요합니다.

참고 항목

BYOS 지원 음성 리소스를 사용하는 데는 Storage 계정 리소스 소유자 권한 이상이 필요하지 않습니다. 그러나 BYOS 시나리오에서 사용하기 위해 Storage 계정의 일회성 초기 구성 중에 필요합니다. 이 섹션의 세부 정보를 참조하세요.

BYOS 지원 음성 리소스 만들기

음성 리소스를 만들기 전에 BYOS를 사용할 수 있도록 Azure 구독이 활성화되어 있는지 확인하세요. 이 섹션을 참조하세요.

BYOS 지원 음성 리소스를 만드는 방법에는 두 가지가 있습니다.

  • Azure portal을 사용합니다.
  • Cognitive Services API(PowerShell, Azure CLI, REST 요청) 사용.

Azure portal 옵션에는 더 엄격한 요구 사항이 있습니다.

  • BYOS 지원 음성 리소스 프로비전에 사용되는 계정에는 구독 소유자 권한이 있어야 합니다.
  • BYOS 연결 Storage 계정은 음성 리소스와 동일한 지역에만 있어야 합니다.

이러한 추가 요구 사항이 시나리오에 맞지 않는 경우 Cognitive Services API 옵션(PowerShell, Azure CLI, REST 요청)을 사용하세요.

위의 방법을 사용하려면 구독 기여자와 같이 구독에서 리소스를 생성할 수 있는 역할이 할당된 Azure 계정이 필요합니다.

참고 항목

Azure portal을 사용하여 BYOS 지원 음성 리소스를 만드는 경우 새 Storage 계정을 만드는 옵션을 선택하는 것이 좋습니다.

Azure portal을 사용하여 BYOS 지원 음성 리소스를 만들려면 일부 포털 미리 보기 기능에 액세스해야 합니다. 다음 단계를 수행합니다.

  1. 이 링크를 사용하여 음성 만들기 페이지로 이동하세요.
  2. 페이지 하단의 Storage 계정 섹션을 확인하세요.
  3. 직접 저장소 가져오기 옵션에 대해 를 선택합니다.
  4. 필요한 Storage 계정 설정을 구성하고 음성 리소스 생성을 진행합니다.

BYOS 지원 음성 리소스를 만들기 위해 Azure portal을 사용한 경우 완전히 사용할 수 있습니다. 다른 방법을 사용한 경우 연결된 Storage 계정 범위 내에서 음성 리소스 관리 ID에 대한 역할 할당을 수행해야 합니다. 모든 경우에 데이터 보안과 관련된 다양한 Storage 계정 설정도 검토해야 합니다. 이 섹션을 참조하세요.

(선택 사항) 음성 리소스 BYOS 구성 확인

특정 음성 리소스에 BYOS가 활성화되어 있는지, 연결된 스토리지 계정이 무엇인지 항상 확인할 수 있습니다. Azure portal 또는 Cognitive Services API를 통해 수행할 수 있습니다.

Azure portal을 사용하여 음성 리소스의 BYOS 구성을 확인하려면 일부 포털 미리 보기 기능에 액세스해야 합니다. 다음 단계를 수행합니다.

  1. 이 링크를 사용하여 음성 만들기 페이지로 이동하세요.
  2. 오른쪽 상단에 있는 X를 눌러 음성 만들기 화면을 닫습니다.
  3. 메시지가 표시되면 저장되지 않은 변경 사항을 삭제하는 데 동의합니다.
  4. 확인하려는 음성 리소스로 이동합니다.
  5. 리소스 관리 그룹에서 스토리지 메뉴를 선택합니다.
  6. 다음을 확인합니다.
    1. 연결된 스토리지 필드에는 BYOS 관련 Storage 계정의 Azure 리소스 ID가 포함됩니다.
    2. ID 유형에는 시스템 할당이 선택되어 있습니다.

리소스 관리 그룹에 스토리지 메뉴 항목이 없으면 선택한 음성 리소스가 BYOS를 지원하지 않는 것입니다.

BYOS 관련 Storage 계정 구성

데이터의 높은 보안과 개인 정보 보호를 달성하려면 BYOS 관련 스토리지 계정의 설정을 적절하게 구성해야 합니다. Azure portal을 사용하여 BYOS 지원 음성 리소스를 만들지 않은 경우 역할 할당의 필수 단계도 수행해야 합니다.

리소스 액세스 역할 할당

BYOS 지원 음성 리소스를 생성하기 위해 Azure portal을 사용하지 않은 경우 이 단계는 필수입니다.

BYOS는 Storage 계정의 Blob 스토리지를 사용합니다. 이로 인해 BYOS 지원 음성 리소스 관리 ID에는 BYOS 연결 Storage 계정 범위 내에서 Storage Blob 데이터 기여자 역할 할당이 필요합니다.

주의

기본 제공 Storage Blob 데이터 기여자 역할 대신 사용자 지정 역할 할당을 사용하지 마세요.

그렇지 않으면 디버깅하기 어려운 서비스 오류가 발생하고 BYOS 관련 스토리지 계정에 액세스하는 데 관련된 문제가 발생할 가능성이 큽니다.

Azure Portal을 사용하여 BYOS 지원 음성 리소스를 만든 경우 이 하위 섹션의 나머지 부분을 건너뛸 수 있습니다. 역할 할당이 이미 완료되었습니다. 그렇지 않으면 다음 단계를 따릅니다.

Important

다음 단계에서 작업을 수행하려면 스토리지 계정의 소유자 역할 또는 더 높은 범위(예: 구독)를 할당받아야 합니다. 소유자 역할만 다른 사용자에게 역할을 할당할 수 있기 때문입니다. 자세한 내용은 여기를 참조하세요.

  1. Azure Portal로 이동하여 Azure 계정에 로그인합니다.
  2. 스토리지 계정을 선택합니다.
  3. 왼쪽 창에서 액세스 제어(IAM) 메뉴를 선택합니다.
  4. 이 리소스에 대한 액세스 권한 부여 타일에서 역할 할당 추가를 선택합니다.
  5. 역할에서 Storage Blob 데이터 기여자를 선택한 후 다음을 선택합니다.
  6. 구성원>액세스 할당에서 관리 ID를 선택합니다.
  7. Speech 리소스의 관리 ID를 할당한 다음, 검토 + 할당을 선택합니다.
  8. 설정을 확인한 후 검토 + 할당을 선택합니다.

음성 텍스트 변환에 대한 Storage 계정 보안 설정 구성

이 섹션에서는 음성 텍스트 변환 시나리오에만 BYOS 관련 Storage 계정을 사용하려는 경우 Storage 계정 보안 설정을 구성하는 방법을 설명합니다. 텍스트 음성 변환 또는 음성 텍스트 변환과 텍스트 음성 변환의 조합을 위해 BYOS 관련 Storage 계정을 사용하는 경우 이 섹션을 사용하세요.

음성 텍스트 변환을 위해 BYOS는 신뢰할 수 있는 Azure 서비스 보안 메커니즘을 사용하여 Storage 계정과 통신합니다. 이 메커니즘을 사용하면 제한된 스토리지 계정 데이터 액세스 규칙을 설정할 수 있습니다.

섹션의 모든 작업을 수행하면 스토리지 계정은 다음과 같이 구성됩니다.

  • 모든 외부 네트워크 트래픽에 대한 액세스는 금지됩니다.
  • 스토리지 계정 키를 사용하여 스토리지 계정에 액세스할 수 없습니다.
  • SAS(공유 액세스 서명)를 사용하여 스토리지 계정 Blob Storage에 대한 액세스는 금지됩니다. (사용자 위임 SAS 제외)
  • BYOS 지원 음성 리소스에 대한 액세스는 시스템 할당 관리 ID 리소스를 사용하여 허용됩니다.

따라서 실제로 Storage 계정은 완전히 "잠겨"지고 음성 리소스를 통해서만 액세스할 수 있으며 다음을 수행할 수 있습니다.

  • 음성 데이터 처리의 아티팩트를 작성합니다(해당 문서의 세부 정보 참조).
  • 새 구성이 적용될 때 이미 존재했던 파일을 읽습니다. 예를 들어 배치 대화 내용 기록을 위한 소스 오디오 파일 또는 사용자 지정 모델 학습 및 테스트를 위한 데이터 세트 파일이 있습니다.

데이터 보안에 관한 한 이 구성을 모델로 간주하고 필요에 따라 사용자 지정해야 합니다.

예를 들어 선택한 공용 IP 주소와 Azure 가상 네트워크의 트래픽을 허용할 수 있습니다. 또한 프라이빗 엔드포인트를 사용하여 스토리지 계정에 대한 액세스를 설정(이 자습서도 참조)하고, 스토리지 계정 키를 사용하여 액세스를 다시 사용하며, 신뢰할 수 있는 다른 Azure 서비스 등에 액세스하도록 허용할 수 있습니다.

참고 항목

Storage 계정을 보호하기 위해 음성용 프라이빗 엔드포인트를 사용할 필요는 없습니다. Speech용 프라이빗 엔드포인트는 Speech API 요청에 대한 채널을 보호하고 솔루션의 추가 구성 요소로 사용할 수 있습니다.

Storage 계정에 대한 액세스 제한

  1. Azure Portal로 이동하여 Azure 계정에 로그인합니다.
  2. 스토리지 계정을 선택합니다.
  3. 왼쪽 창의 설정 그룹에서 구성을 선택합니다.
  4. Blob 공용 액세스에 대해 사용 안 함을 선택합니다.
  5. 스토리지 계정 키 액세스 허용에 대해 사용 안 함을 선택합니다.
  6. 저장을 선택합니다.

자세한 내용은 컨테이너 및 Blob에 대한 익명 공용 읽기 액세스 방지Azure Storage 계정에 대한 공유 키 권한 부여 방지를 참조하세요.

Azure Storage 방화벽 구성

Storage 계정에 대한 액세스가 제한되어 있으므로 음성 리소스 관리 ID에 네트워킹 액세스 권한을 부여해야 합니다. 다음 단계에 따라 Speech 리소스에 대한 액세스를 추가합니다.

  1. Azure Portal로 이동하여 Azure 계정에 로그인합니다.

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

  3. 왼쪽 창의 보안 + 네트워킹 그룹에서 네트워킹을 선택합니다.

  4. 방화벽 및 가상 네트워크 탭에서 선택한 가상 네트워크 및 IP 주소에서 사용을 선택합니다.

  5. 모든 확인란을 선택 취소합니다.

  6. Microsoft 네트워크 라우팅이 선택되어 있는지 확인합니다.

  7. 리소스 인스턴스 섹션에서 Microsoft.CognitiveServices/accounts를 리소스 종류로 선택하고 Speech 리소스를 인스턴스 이름으로 선택합니다.

  8. 저장을 선택합니다.

    참고 항목

    네트워크 변경 내용이 적용되는 데 최대 5분이 걸릴 수 있습니다.

텍스트 음성 변환에 대한 Storage 계정 보안 설정 구성

이 섹션에서는 텍스트 음성 변환 또는 음성 텍스트 변환과 텍스트 음성 변환의 조합을 위해 BYOS 관련 Storage 계정을 사용하려는 경우 Storage 계정 보안 설정을 구성하는 방법을 설명합니다. 음성 텍스트 변환 전용으로 BYOS 관련 Storage 계정을 사용하는 경우 이 섹션을 사용하세요.

참고 항목

텍스트 음성 변환은 텍스트 음성 변환에 비해 Storage 계정 방화벽의 더 편안한 설정이 필요합니다. 음성 텍스트 변환 및 텍스트 음성 변환을 모두 사용하고 데이터를 보호하기 위해 최대한 제한된 스토리지 계정 보안 설정이 필요한 경우 음성 텍스트 변환 및 텍스트 음성 변환 작업에 대해 다른 스토리지 계정과 해당 Speech 리소스를 사용하는 것을 고려할 수 있습니다.

섹션의 모든 작업을 수행하면 스토리지 계정은 다음과 같이 구성됩니다.

이는 텍스트 음성 변환 시나리오에 가능한 가장 제한적인 보안 설정입니다. 필요에 따라 추가로 사용자 지정할 수도 있습니다.

Storage 계정에 대한 액세스 제한

  1. Azure Portal로 이동하여 Azure 계정에 로그인합니다.
  2. 스토리지 계정을 선택합니다.
  3. 왼쪽 창의 설정 그룹에서 구성을 선택합니다.
  4. Blob 공용 액세스에 대해 사용 안 함을 선택합니다.
  5. 스토리지 계정 키 액세스 허용에 대해 사용 안 함을 선택합니다.
  6. 저장을 선택합니다.

자세한 내용은 컨테이너 및 Blob에 대한 익명 공용 읽기 액세스 방지Azure Storage 계정에 대한 공유 키 권한 부여 방지를 참조하세요.

Azure Storage 방화벽 구성

사용자 지정 신경망 음성은 사용자 위임 SAS를 사용하여 사용자 지정 신경망 음성 모델 학습을 위한 데이터를 읽습니다. Storage 계정에 대한 외부 네트워크 트래픽 액세스를 허용해야 합니다.

  1. Azure Portal로 이동하여 Azure 계정에 로그인합니다.
  2. 스토리지 계정을 선택합니다.
  3. 왼쪽 창의 보안 + 네트워킹 그룹에서 네트워킹을 선택합니다.
  4. 방화벽 및 가상 네트워크 탭에서 모든 네트워크에서 사용을 선택합니다.
  5. 저장을 선택합니다.

Speech Studio에서 사용할 BYOS 연결 Storage 계정 구성

데이터 세트 업로드, 사용자 지정 모델 학습 및 테스트와 같은 많은 Speech Studio 작업에는 BYOS 지원 Speech 리소스의 특별한 구성이 필요하지 않습니다.

그러나 Speech Studio 웹 인터페이스를 통해 BYOS 관련 스토리지 계정에 저장된 데이터를 읽어야 하는 경우 BYOS 관련 스토리지 계정의 추가 설정을 구성해야 합니다. 예를 들어 데이터 세트의 콘텐츠를 보는 데 필요합니다.

CORS(원본 간 리소스 공유) 구성

Speech Studio에는 BYOS 연결 Storage 계정의 Blob 스토리지에 요청을 수행할 수 있는 권한이 필요합니다. 이러한 권한을 부여하려면 CORS(원본 간 리소스 공유)를 사용합니다. 다음 단계를 수행합니다.

  1. Azure Portal로 이동하여 Azure 계정에 로그인합니다.
  2. 스토리지 계정을 선택합니다.
  3. 왼쪽 창의 설정 그룹에서 리소스 공유(CORS)를 선택합니다.
  4. Blob 스토리지 탭이 선택되어 있는지 확인하세요.
  5. 다음 레코드를 구성합니다.
    • 허용되는 원본: https://speech.microsoft.com
    • 허용되는 메서드: GET, OPTIONS
    • 허용되는 헤더: *
    • 노출된 헤더: *
    • 최대 연령: 1000
  6. 저장을 선택합니다.

Warning

허용되는 원본 필드에는 후행 슬래시가 없이 URL이 포함되어야 합니다. 즉, https://speech.microsoft.com/이(가) 아니라 https://speech.microsoft.com이어야 합니다. 후행 슬래시를 추가하면 Speech Studio에서 데이터 세트 및 모델 테스트의 세부 정보가 표시되지 않습니다.

Azure Storage 방화벽 구성

Speech Studio를 사용하여 브라우저를 실행하는 컴퓨터에 대한 액세스를 허용해야 합니다. 스토리지 계정 방화벽 설정이 모든 네트워크의 공개 액세스를 허용하는 경우 이 하위 섹션을 건너뛸 수 있습니다. 그렇지 않으면 다음 단계를 따릅니다.

  1. Azure Portal로 이동하여 Azure 계정에 로그인합니다.
  2. 스토리지 계정을 선택합니다.
  3. 왼쪽 창의 보안 + 네트워킹 그룹에서 네트워킹을 선택합니다.
  4. 방화벽 섹션에 웹 브라우저를 실행하는 시스템의 IP 주소 또는 해당 시스템의 IP 주소가 속한 IP 서브넷을 입력합니다.
  5. 저장을 선택합니다.

다음 단계