Udostępnij za pośrednictwem


Używanie kluczy zarządzanych przez klienta z usługą Azure Machine Learning

W artykule dotyczącym pojęć związanych z kluczami zarządzanymi przez klienta przedstawiono możliwości szyfrowania zapewniane przez usługę Azure Machine Learning. Teraz dowiedz się, jak używać kluczy zarządzanych przez klienta w usłudze Azure Machine Learning.

Usługa Azure Machine Learning korzysta z następujących usług korzystających z kluczy zarządzanych przez klienta:

Usługa Zastosowanie
Azure Cosmos DB Przechowuje metadane dla usługi Azure Machine Learning
Wyszukiwanie AI platformy Azure Przechowuje metadane obszaru roboczego dla usługi Azure Machine Learning
Azure Storage Przechowuje metadane obszaru roboczego dla usługi Azure Machine Learning
Azure Kubernetes Service Hosty wytrenowane modele jako punkty końcowe wnioskowania

Użyj tego samego klucza, aby zabezpieczyć usługę Azure Cosmos DB, usługę Azure AI Search i usługę Azure Storage. Możesz użyć innego klucza dla usługi Azure Kubernetes Service.

Jeśli używasz klucza zarządzanego przez klienta z usługą Azure Cosmos DB, usługą Azure AI Search i usługą Azure Storage, klucz jest udostępniany podczas tworzenia obszaru roboczego. Klucz używany z usługą Azure Kubernetes Service jest udostępniany podczas konfigurowania tego zasobu.

Usługa Zastosowanie
Azure Cosmos DB Przechowuje metadane dla usługi Azure Machine Learning
Wyszukiwanie AI platformy Azure Przechowuje metadane obszaru roboczego dla usługi Azure Machine Learning
Azure Storage Przechowuje metadane obszaru roboczego dla usługi Azure Machine Learning
Azure Kubernetes Service Hosty wytrenowane modele jako punkty końcowe wnioskowania
Azure Container Instances Hosty wytrenowane modele jako punkty końcowe wnioskowania

Użyj tego samego klucza, aby zabezpieczyć usługę Azure Cosmos DB, usługę Azure AI Search i usługę Azure Storage. Możesz użyć innego klucza dla usług Azure Kubernetes Service i Azure Container Instances.

Jeśli używasz klucza zarządzanego przez klienta z usługą Azure Cosmos DB, usługą Azure AI Search i usługą Azure Storage, klucz jest udostępniany podczas tworzenia obszaru roboczego. Klucze używane z usługami Azure Container Instances i Azure Kubernetes Service są udostępniane podczas konfigurowania tych zasobów.

Wymagania wstępne

  • Subskrypcja platformy Azure.

  • Należy zarejestrować następujących dostawców zasobów platformy Azure:

    Dostawca zasobów Dlaczego jest to potrzebne
    Microsoft.MachineLearningServices Tworzenie obszaru roboczego usługi Azure Machine Learning.
    Microsoft.Storage Konto magazynu jest używane jako domyślny magazyn dla obszaru roboczego.
    Microsoft.KeyVault Usługa Azure Key Vault jest używana przez obszar roboczy do przechowywania wpisów tajnych.
    Microsoft.DocumentDB Wystąpienie usługi Azure Cosmos DB, które rejestruje metadane dla obszaru roboczego.
    Microsoft.Search Usługa Azure AI Search udostępnia funkcje indeksowania dla obszaru roboczego.

    Aby uzyskać informacje na temat rejestrowania dostawców zasobów, zobacz Rozwiązywanie błędów dotyczących rejestracji dostawcy zasobów.

Ograniczenia

  • Po utworzeniu obszaru roboczego klucz szyfrowania zarządzany przez klienta dla zasobów, od których zależy obszar roboczy, można zaktualizować tylko do innego klucza w oryginalnym zasobie usługi Azure Key Vault.
  • Zasoby zarządzane przez firmę Microsoft w ramach subskrypcji nie mogą przenosić własności do Ciebie.
  • Nie możesz usunąć zasobów zarządzanych przez firmę Microsoft używanych na potrzeby kluczy zarządzanych przez klienta bez usunięcia obszaru roboczego.
  • Magazyn kluczy zawierający klucz zarządzany przez klienta musi znajdować się w tej samej subskrypcji platformy Azure co obszar roboczy usługi Azure Machine Learning.
  • Dysk systemu operacyjnego obliczeń uczenia maszynowego nie może być zaszyfrowany przy użyciu klucza zarządzanego przez klienta, ale można go zaszyfrować przy użyciu klucza zarządzanego przez firmę Microsoft, jeśli obszar roboczy jest tworzony z parametrem hbi_workspace ustawionym na TRUEwartość . Aby uzyskać więcej informacji, zobacz Szyfrowanie danych.

Ważne

W przypadku korzystania z klucza zarządzanego przez klienta koszty subskrypcji będą wyższe ze względu na dodatkowe zasoby w ramach subskrypcji. Aby oszacować koszt, użyj kalkulatora cen platformy Azure.

Tworzenie usługi Azure Key Vault

Aby utworzyć magazyn kluczy, zobacz Tworzenie magazynu kluczy. Podczas tworzenia usługi Azure Key Vault należy włączyć ochronę usuwania nietrwałego i przeczyszczania.

Ważne

Magazyn kluczy musi znajdować się w tej samej subskrypcji platformy Azure, która będzie zawierać obszar roboczy usługi Azure Machine Learning.

Utwórz klucz

Napiwek

Jeśli masz problemy z tworzeniem klucza, może to być spowodowane przez mechanizmy kontroli dostępu opartej na rolach platformy Azure, które zostały zastosowane w subskrypcji. Upewnij się, że jednostka zabezpieczeń (użytkownik, tożsamość zarządzana, jednostka usługi itp.) używana do utworzenia klucza została przypisana rola Współautor dla wystąpienia magazynu kluczy. Należy również skonfigurować zasady dostępu w magazynie kluczy, które zapewniają jednostce zabezpieczeń autoryzację Tworzenie, Pobieranie, Usuwanie i Przeczyszczanie.

Jeśli planujesz używać tożsamości zarządzanej przypisanej przez użytkownika dla obszaru roboczego, tożsamość zarządzana musi być również przypisana do tych ról i zasad dostępu.

Aby uzyskać więcej informacji, zobacz następujące artykuły:

  1. W witrynie Azure Portal wybierz wystąpienie magazynu kluczy. Następnie wybierz pozycję Klucze po lewej stronie.

  2. Wybierz pozycję + Generuj/importuj w górnej części strony. Użyj następujących wartości, aby utworzyć klucz:

    • Ustaw pozycję Opcje na Generuj.
    • Wprowadź nazwę klucza. Nazwa powinna być czymś, co określa planowane użycie. Na przykład my-cosmos-key.
    • Ustaw wartość Typ klucza na RSA.
    • Zalecamy wybranie co najmniej 3072 dla rozmiaru klucza RSA.
    • Pozostaw wartość Włączone ustawioną na tak.

    Opcjonalnie można ustawić datę aktywacji, datę wygaśnięcia i tagi.

  3. Wybierz pozycję Utwórz , aby utworzyć klucz.

Zezwalaj usłudze Azure Cosmos DB na dostęp do klucza

  1. Aby skonfigurować magazyn kluczy, wybierz go w witrynie Azure Portal , a następnie wybierz pozycję Zasady dostępu z menu po lewej stronie.
  2. Aby utworzyć uprawnienia dla usługi Azure Cosmos DB, wybierz pozycję + Utwórz w górnej części strony. W obszarze Uprawnienia klucza wybierz pozycję Pobierz, Odpakuj klucz i Zawijanie uprawnień klucza .
  3. W obszarze Podmiot zabezpieczeń wyszukaj usługę Azure Cosmos DB , a następnie wybierz ją. Identyfikator podmiotu zabezpieczeń dla tego wpisu dotyczy a232010e-820c-4083-83bb-3ace5fc29d0b wszystkich regionów innych niż Azure Government. W przypadku platformy Azure Government identyfikatorem podmiotu zabezpieczeń jest 57506a73-e302-42a9-b869-6f12d9ec29e9.
  4. Wybierz pozycję Przejrzyj i utwórz, a następnie wybierz pozycję Utwórz.

Tworzenie obszaru roboczego korzystającego z klucza zarządzanego przez klienta

Tworzenie obszaru roboczego usługi Azure Machine Learning. Podczas tworzenia obszaru roboczego musisz wybrać usługę Azure Key Vault i klucz. W zależności od sposobu tworzenia obszaru roboczego można określić te zasoby na różne sposoby:

Ostrzeżenie

Magazyn kluczy zawierający klucz zarządzany przez klienta musi znajdować się w tej samej subskrypcji platformy Azure co obszar roboczy.

  • Witryna Azure Portal: wybierz magazyn kluczy i klucz z pola wejściowego listy rozwijanej podczas konfigurowania obszaru roboczego.

  • Zestaw SDK, interfejs API REST i szablony usługi Azure Resource Manager: podaj identyfikator usługi Azure Resource Manager magazynu kluczy i adres URL klucza. Aby uzyskać te wartości, użyj interfejsu wiersza polecenia platformy Azure i następujących poleceń:

    # Replace `mykv` with your key vault name.
    # Replace `mykey` with the name of your key.
    
    # Get the Azure Resource Manager ID of the key vault
    az keyvault show --name mykv --query id
    # Get the URL for the key
    az keyvault key show --vault-name mykv -n mykey --query key.kid
    

    Wartość identyfikatora magazynu kluczy będzie podobna do /subscriptions/{GUID}/resourceGroups/{resource-group-name}/providers/Microsoft.KeyVault/vaults/mykv. Adres URL klucza będzie podobny do https://mykv.vault.azure.net/keys/mykey/{GUID}.

Przykłady tworzenia obszaru roboczego przy użyciu klucza zarządzanego przez klienta można znaleźć w następujących artykułach:

Metoda tworzenia Artykuł
CLI Tworzenie obszaru roboczego przy użyciu interfejsu wiersza polecenia platformy Azure
Witryna Azure Portal/
zestaw SDK języka Python
Tworzenie obszaru roboczego i zarządzanie nim
Szablon usługi Azure Resource Manager
Tworzenie obszaru roboczego przy użyciu szablonu
Interfejs API REST Tworzenie, uruchamianie i usuwanie zasobów usługi Azure Machine Learning za pomocą interfejsu REST

Po utworzeniu obszaru roboczego zauważysz, że grupa zasobów platformy Azure jest tworzona w ramach subskrypcji. Ta grupa jest dodatkiem do grupy zasobów dla obszaru roboczego. Ta grupa zasobów będzie zawierać zasoby zarządzane przez firmę Microsoft, z którymi jest używany klucz. Grupa zasobów będzie mieć nazwę przy użyciu formuły <Azure Machine Learning workspace resource group name><GUID>. Będzie ona zawierać wystąpienie usługi Azure Cosmos DB, konto usługi Azure Storage i usługę Azure AI Search.

Napiwek

  • Jednostki żądań dla wystąpienia usługi Azure Cosmos DB są automatycznie skalowane zgodnie z potrzebami.
  • Jeśli obszar roboczy usługi Azure Machine Learning używa prywatnego punktu końcowego, ta grupa zasobów będzie również zawierać zarządzaną przez firmę Microsoft sieć wirtualną platformy Azure. Ta sieć wirtualna służy do zabezpieczania komunikacji między usługami zarządzanymi a obszarem roboczym. Nie można podać własnej sieci wirtualnej do użycia z zasobami zarządzanymi przez firmę Microsoft. Nie można również zmodyfikować sieci wirtualnej. Na przykład nie można zmienić używanego zakresu adresów IP.

Ważne

Jeśli twoja subskrypcja nie ma wystarczającego limitu przydziału dla tych usług, wystąpi błąd.

Ostrzeżenie

Nie usuwaj grupy zasobów zawierającej to wystąpienie usługi Azure Cosmos DB ani żadnego z zasobów utworzonych automatycznie w tej grupie. Jeśli musisz usunąć grupę zasobów lub usługi zarządzane przez firmę Microsoft, musisz usunąć obszar roboczy usługi Azure Machine Learning, który go używa. Zasoby grupy zasobów są usuwane po usunięciu skojarzonego obszaru roboczego.

Aby uzyskać więcej informacji na temat kluczy zarządzanych przez klienta za pomocą usługi Azure Cosmos DB, zobacz Konfigurowanie kluczy zarządzanych przez klienta dla konta usługi Azure Cosmos DB.

Azure Container Instance

Ważne

Wdrażanie w usłudze Azure Container Instances nie jest dostępne w zestawie SDK lub interfejsie wiersza polecenia w wersji 2. Tylko za pośrednictwem zestawu SDK i interfejsu wiersza polecenia w wersji 1.

Podczas wdrażania wytrenowanego modelu w wystąpieniu kontenera platformy Azure (ACI) można zaszyfrować wdrożony zasób przy użyciu klucza zarządzanego przez klienta. Aby uzyskać informacje na temat generowania klucza, zobacz Szyfrowanie danych przy użyciu klucza zarządzanego przez klienta.

Aby użyć klucza podczas wdrażania modelu w usłudze Azure Container Instance, utwórz nową konfigurację wdrożenia przy użyciu polecenia AciWebservice.deploy_configuration(). Podaj kluczowe informacje przy użyciu następujących parametrów:

  • cmk_vault_base_url: adres URL magazynu kluczy, który zawiera klucz.
  • cmk_key_name: nazwa klucza.
  • cmk_key_version: wersja klucza.

Aby uzyskać więcej informacji na temat tworzenia i używania konfiguracji wdrożenia, zobacz następujące artykuły:

Azure Kubernetes Service

W dowolnym momencie możesz zaszyfrować wdrożony zasób usługi Azure Kubernetes Service przy użyciu kluczy zarządzanych przez klienta. Aby uzyskać więcej informacji, zobacz Bring your own keys with Azure Kubernetes Service (Używanie własnych kluczy za pomocą usługi Azure Kubernetes Service).

Ten proces umożliwia szyfrowanie zarówno danych, jak i dysku systemu operacyjnego wdrożonych maszyn wirtualnych w klastrze Kubernetes.

Ważne

Ten proces działa tylko z usługą AKS K8s w wersji 1.17 lub nowszej.

Następne kroki