Door de klant beheerde sleutels gebruiken met Azure Machine Learning
In het artikel concepten van door de klant beheerde sleutels hebt u geleerd over de versleutelingsmogelijkheden die Azure Machine Learning biedt. Leer nu hoe u door de klant beheerde sleutels gebruikt met Azure Machine Learning.
Azure Machine Learning is afhankelijk van de volgende services die gebruikmaken van door de klant beheerde sleutels:
Service | Waar het voor wordt gebruikt |
---|---|
Azure Cosmos DB | Slaat metagegevens op voor Azure Machine Learning |
Azure AI Search | Slaat metagegevens van werkruimten op voor Azure Machine Learning |
Azure Storage | Slaat metagegevens van werkruimten op voor Azure Machine Learning |
Azure Kubernetes Service | Getrainde modellen hosten als deductie-eindpunten |
U gebruikt dezelfde sleutel om Azure Cosmos DB, Azure AI Search en Azure Storage te beveiligen. U kunt een andere sleutel gebruiken voor Azure Kubernetes Service.
Wanneer u een door de klant beheerde sleutel gebruikt met Azure Cosmos DB, Azure AI Search en Azure Storage, wordt de sleutel opgegeven wanneer u uw werkruimte maakt. De sleutel die u met Azure Kubernetes Service gebruikt, wordt geleverd wanneer u die resource configureert.
Service | Waar het voor wordt gebruikt |
---|---|
Azure Cosmos DB | Slaat metagegevens op voor Azure Machine Learning |
Azure AI Search | Slaat metagegevens van werkruimten op voor Azure Machine Learning |
Azure Storage | Slaat metagegevens van werkruimten op voor Azure Machine Learning |
Azure Kubernetes Service | Getrainde modellen hosten als deductie-eindpunten |
Azure Container Instances | Getrainde modellen hosten als deductie-eindpunten |
U gebruikt dezelfde sleutel om Azure Cosmos DB, Azure AI Search en Azure Storage te beveiligen. U kunt een andere sleutel gebruiken voor Azure Kubernetes Service en Azure Container Instances.
Wanneer u een door de klant beheerde sleutel gebruikt met Azure Cosmos DB, Azure AI Search en Azure Storage, wordt de sleutel opgegeven wanneer u uw werkruimte maakt. De sleutels die u gebruikt met Azure Container Instances en Azure Kubernetes Service, worden verstrekt wanneer u deze resources configureert.
Vereisten
Een Azure-abonnement.
De volgende Azure-resourceproviders moeten zijn geregistreerd:
Resourceprovider Waarom dit nodig is Microsoft.MachineLearningServices De Azure Machine Learning-werkruimte maken. Microsoft.Storage Opslagaccount wordt gebruikt als de standaardopslag voor de werkruimte. Microsoft.KeyVault Azure Key Vault wordt door de werkruimte gebruikt om geheimen op te slaan. Microsoft.DocumentDB Azure Cosmos DB-exemplaar dat metagegevens voor de werkruimte registreert. Microsoft.Search Azure AI Search biedt indexeringsmogelijkheden voor de werkruimte. Zie Fouten oplossen voor de registratie van de resourceprovider voor informatie over het registreren van resourceproviders.
Beperkingen
- Nadat de werkruimte is gemaakt, kan de door de klant beheerde versleutelingssleutel voor resources waarvoor de werkruimte afhankelijk is, alleen worden bijgewerkt naar een andere sleutel in de oorspronkelijke Azure Key Vault-resource.
- Resources die worden beheerd door Microsoft in uw abonnement, kunnen het eigendom niet aan u overdragen.
- U kunt door Microsoft beheerde resources die worden gebruikt voor door de klant beheerde sleutels niet verwijderen zonder ook uw werkruimte te verwijderen.
- De sleutelkluis die uw door de klant beheerde sleutel bevat, moet zich in hetzelfde Azure-abonnement bevinden als de Azure Machine Learning-werkruimte.
- De besturingssysteemschijf van machine learning-rekenkracht kan niet worden versleuteld met een door de klant beheerde sleutel, maar kan worden versleuteld met door Microsoft beheerde sleutel als de werkruimte is gemaakt met
hbi_workspace
de parameter ingesteld opTRUE
. Zie Gegevensversleuteling voor meer informatie.
Belangrijk
Wanneer u een door de klant beheerde sleutel gebruikt, zijn de kosten voor uw abonnement hoger vanwege de extra resources in uw abonnement. Als u de kosten wilt schatten, gebruikt u de Azure-prijscalculator.
Azure Key Vault maken
Zie Een sleutelkluis maken om de sleutelkluis te maken. Wanneer u Azure Key Vault maakt, moet u voorlopig verwijderen en opschonen inschakelen.
Belangrijk
De sleutelkluis moet zich in hetzelfde Azure-abonnement bevinden dat uw Azure Machine Learning-werkruimte bevat.
Een sleutel maken
Tip
Als u problemen ondervindt met het maken van de sleutel, kan dit worden veroorzaakt door op rollen gebaseerd toegangsbeheer van Azure dat is toegepast in uw abonnement. Zorg ervoor dat de beveiligingsprincipaal (gebruiker, beheerde identiteit, service-principal, enzovoort) die u gebruikt om de sleutel te maken, is toegewezen aan de rol Inzender voor het exemplaar van de sleutelkluis. U moet ook een toegangsbeleid configureren in de sleutelkluis waarmee de autorisatie voor het maken, ophalen, verwijderen en opschonen van de beveiligingsprincipaal wordt verleend.
Als u van plan bent om een door de gebruiker toegewezen beheerde identiteit voor uw werkruimte te gebruiken, moet aan de beheerde identiteit ook deze rollen en toegangsbeleid worden toegewezen.
Raadpleeg voor meer informatie de volgende artikelen:
Selecteer in Azure Portal het sleutelkluisexemplaren. Selecteer vervolgens Sleutels aan de linkerkant.
Selecteer + Genereren/importeren boven aan de pagina. Gebruik de volgende waarden om een sleutel te maken:
- Stel opties in om te genereren.
- Voer een naam in voor de sleutel. De naam moet iets zijn dat aangeeft wat het geplande gebruik is. Bijvoorbeeld:
my-cosmos-key
. - Stel sleuteltype in op RSA.
- U wordt aangeraden ten minste 3072 te selecteren voor de RSA-sleutelgrootte.
- Laat Ingeschakeld ingesteld op Ja.
U kunt desgewenst een activeringsdatum, vervaldatum en tags instellen.
Selecteer Maken om de sleutel te maken.
Azure Cosmos DB toegang geven tot de sleutel
- Als u de sleutelkluis wilt configureren, selecteert u deze in Azure Portal en selecteert u vervolgens Toegangsbeleid in het linkermenu.
- Als u machtigingen voor Azure Cosmos DB wilt maken, selecteert u + Maken boven aan de pagina. Selecteer onder Sleutelmachtigingen de optie Sleutel ophalen, uitpakken en sleutelmachtigingen verpakken.
- Zoek onder Principal naar Azure Cosmos DB en selecteer deze. De principal-id voor deze vermelding is
a232010e-820c-4083-83bb-3ace5fc29d0b
voor alle andere regio's dan Azure Government. Voor Azure Government is57506a73-e302-42a9-b869-6f12d9ec29e9
de principal-id. - Selecteer Controleren + maken en selecteer vervolgens Maken.
Een werkruimte maken die gebruikmaakt van een door de klant beheerde sleutel
Een Azure Machine Learning-werkruimte maken Wanneer u de werkruimte maakt, moet u de Azure Key Vault en de sleutel selecteren. Afhankelijk van hoe u de werkruimte maakt, geeft u deze resources op verschillende manieren op:
Waarschuwing
De sleutelkluis die uw door de klant beheerde sleutel bevat, moet zich in hetzelfde Azure-abonnement bevinden als de werkruimte.
Azure Portal: Selecteer de sleutelkluis en sleutel in een vervolgkeuzelijst bij het configureren van de werkruimte.
SDK-, REST API- en Azure Resource Manager-sjablonen: geef de Azure Resource Manager-id van de sleutelkluis en de URL voor de sleutel op. Gebruik de Azure CLI en de volgende opdrachten om deze waarden op te halen:
# 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
De waarde van de sleutelkluis-id is vergelijkbaar met
/subscriptions/{GUID}/resourceGroups/{resource-group-name}/providers/Microsoft.KeyVault/vaults/mykv
. De URL voor de sleutel is vergelijkbaar methttps://mykv.vault.azure.net/keys/mykey/{GUID}
.
Zie de volgende artikelen voor voorbeelden van het maken van de werkruimte met een door de klant beheerde sleutel:
Methode voor het maken | Artikel |
---|---|
CLI | Een werkruimte maken met Azure CLI |
Azure Portal/ Python SDK |
Werkruimte maken en beheren |
Azure Resource Manager-sjabloon |
Een werkruimte maken met een sjabloon |
REST-API | Azure Machine Learning-resources maken, uitvoeren en verwijderen met REST |
Zodra de werkruimte is gemaakt, ziet u dat de Azure-resourcegroep is gemaakt in uw abonnement. Deze groep is naast de resourcegroep voor uw werkruimte. Deze resourcegroep bevat de door Microsoft beheerde resources waarmee uw sleutel wordt gebruikt. De resourcegroep krijgt een naam met behulp van de formule van <Azure Machine Learning workspace resource group name><GUID>
. Het bevat een Azure Cosmos DB-exemplaar, Een Azure Storage-account en Azure AI Search.
Tip
- De aanvraageenheden voor het Azure Cosmos DB-exemplaar worden indien nodig automatisch geschaald.
- Als uw Azure Machine Learning-werkruimte gebruikmaakt van een privé-eindpunt, bevat deze resourcegroep ook een door Microsoft beheerd Azure Virtual Network. Dit VNet wordt gebruikt om de communicatie tussen de beheerde services en de werkruimte te beveiligen. U kunt uw eigen VNet niet opgeven voor gebruik met de door Microsoft beheerde resources. U kunt het virtuele netwerk ook niet wijzigen. U kunt bijvoorbeeld het IP-adresbereik dat wordt gebruikt, niet wijzigen.
Belangrijk
Als uw abonnement onvoldoende quotum voor deze services heeft, treedt er een fout op.
Waarschuwing
Verwijder niet de resourcegroep die dit Azure Cosmos DB-exemplaar bevat of een van de resources die automatisch in deze groep zijn gemaakt. Als u de resourcegroep of door Microsoft beheerde services erin wilt verwijderen, moet u de Azure Machine Learning-werkruimte verwijderen die deze gebruikt. De resourcegroepresources worden verwijderd wanneer de bijbehorende werkruimte wordt verwijderd.
Zie Door de klant beheerde sleutels configureren voor uw Azure Cosmos DB-account voor meer informatie over door de klant beheerde sleutels.
Azure Container Instance
Belangrijk
Implementeren in Azure Container Instances is niet beschikbaar in SDK of CLI v2. Alleen via SDK & CLI v1.
Wanneer u een getraind model implementeert in een Azure Container Instance (ACI), kunt u de geïmplementeerde resource versleutelen met behulp van een door de klant beheerde sleutel. Zie Gegevens versleutelen met een door de klant beheerde sleutel voor informatie over het genereren van een sleutel.
Als u de sleutel wilt gebruiken bij het implementeren van een model in Azure Container Instance, maakt u een nieuwe implementatieconfiguratie met behulp van AciWebservice.deploy_configuration()
. Geef de belangrijkste informatie op met behulp van de volgende parameters:
cmk_vault_base_url
: De URL van de sleutelkluis die de sleutel bevat.cmk_key_name
: De naam van de sleutel.cmk_key_version
: De versie van de sleutel.
Zie de volgende artikelen voor meer informatie over het maken en gebruiken van een implementatieconfiguratie:
Een model implementeren in Azure Container Instances (SDK/CLI v1)
Zie Implementatiegegevens versleutelen voor meer informatie over het gebruik van een door de klant beheerde sleutel met ACI.
Azure Kubernetes Service
U kunt een geïmplementeerde Azure Kubernetes Service-resource op elk gewenst moment versleutelen met door de klant beheerde sleutels. Zie Bring Your Own Keys met Azure Kubernetes Service voor meer informatie.
Met dit proces kunt u zowel de gegevens als de besturingssysteemschijf van de geïmplementeerde virtuele machines in het Kubernetes-cluster versleutelen.
Belangrijk
Dit proces werkt alleen met AKS K8s versie 1.17 of hoger.