Azure Data Explorer versleutelt alle gegevens in een opslagaccount at rest. Gegevens worden standaard versleuteld met door Microsoft beheerde sleutels. Voor extra controle over versleutelingssleutels kunt u door de klant beheerde sleutels opgeven voor gebruik voor gegevensversleuteling.
Door de klant beheerde sleutels moeten worden opgeslagen in een Azure-Key Vault. U kunt uw eigen sleutels maken en opslaan in een sleutelkluis, of u kunt een Azure Key Vault-API gebruiken om sleutels te genereren. Het Azure Data Explorer-cluster en de sleutelkluis moeten zich in dezelfde regio bevinden, maar ze kunnen zich in verschillende abonnementen bevinden. Zie door de klant beheerde sleutels met Azure Key Vault voor een gedetailleerde uitleg over door de klant beheerde sleutels.
In dit artikel wordt beschreven hoe u door de klant beheerde sleutels configureert.
Zie het gearchiveerde artikel voor codevoorbeelden op basis van eerdere SDK-versies.
Azure Key Vault configureren
Als u door de klant beheerde sleutels wilt configureren met Azure Data Explorer, moet u twee eigenschappen instellen voor de sleutelkluis: Voorlopig verwijderen en Niet opschonen. Deze eigenschappen zijn niet standaard ingeschakeld. Als u deze eigenschappen wilt inschakelen, voert u Voorlopig verwijderen inschakelen en Beveiliging tegen opschonen in PowerShell of Azure CLI in op een nieuwe of bestaande sleutelkluis. Alleen RSA-sleutels van grootte 2048 worden ondersteund. Zie Key Vault sleutels voor meer informatie over sleutels.
Notitie
Zie Beperkingen voor meer informatie over de beperkingen van het gebruik van door de klant beheerde sleutels op leader- en volgerclusters.
Een beheerde identiteit toewijzen aan het cluster
Als u door de klant beheerde sleutels voor uw cluster wilt inschakelen, wijst u eerst een door het systeem toegewezen of door de gebruiker toegewezen beheerde identiteit toe aan het cluster. U gebruikt deze beheerde identiteit om het cluster machtigingen te verlenen voor toegang tot de sleutelkluis. Zie Beheerde identiteiten als u beheerde identiteiten wilt configureren.
Versleuteling inschakelen met door de klant beheerde sleutels
In de volgende stappen wordt uitgelegd hoe u versleuteling van door de klant beheerde sleutels inschakelt met behulp van de Azure Portal. Azure Data Explorer-versleuteling maakt standaard gebruik van door Microsoft beheerde sleutels. Configureer uw Azure Data Explorer-cluster om door de klant beheerde sleutels te gebruiken en geef de sleutel op die aan het cluster moet worden gekoppeld.
Selecteer Instellingen>Versleuteling in het linkerdeelvenster van de portal.
Selecteer in het deelvenster Versleuteling de optie Aan voor de instelling Door de klant beheerde sleutel .
Selecteer Sleutel selecteren.
Selecteer in het venster Sleutel selecteren in Azure Key Vault een bestaande sleutelkluis in de vervolgkeuzelijst. Als u Nieuwe maken selecteert om een nieuwe Key Vault te maken, wordt u doorgestuurd naar het scherm Key Vault maken.
Selecteer Sleutel.
Versie:
Schakel het selectievakje Altijd huidige sleutelversie gebruiken in om ervoor te zorgen dat deze sleutel altijd de nieuwste sleutelversie gebruikt.
Selecteer anders Versie.
Kies Selecteren.
Selecteer onder Identiteitstypede optie Door het systeem toegewezen of Door de gebruiker toegewezen.
Als u Door gebruiker toegewezen selecteert, kiest u een door de gebruiker toegewezen identiteit in de vervolgkeuzelijst.
Selecteer opslaan in het deelvenster Versleuteling dat nu uw sleutel bevat. Wanneer het maken van de CMK is voltooid, ziet u een bericht dat is geslaagd in Meldingen.
Als u door het systeem toegewezen identiteit selecteert bij het inschakelen van door de klant beheerde sleutels voor uw Azure Data Explorer-cluster, maakt u een door het systeem toegewezen identiteit voor het cluster als deze niet bestaat. Daarnaast geeft u de vereiste get-, wrapKey- en unwrapKey-machtigingen op voor uw Azure Data Explorer-cluster op de geselecteerde Key Vault en krijgt u de Key Vault eigenschappen.
Notitie
Selecteer Uit om de door de klant beheerde sleutel te verwijderen nadat deze is gemaakt.
In de volgende secties wordt uitgelegd hoe u versleuteling van door de klant beheerde sleutels configureert met behulp van de Azure Data Explorer C#-client.
Als u de voorbeelden in dit artikel wilt uitvoeren, maakt u een Microsoft Entra toepassing en service-principal die toegang hebben tot resources. U kunt roltoewijzing toevoegen aan het abonnementsbereik en de vereiste Microsoft Entra Directory (tenant) ID, Application IDen Application Secretophalen.
Het volgende codefragment laat zien hoe u de Microsoft Authentication Library (MSAL) gebruikt om een Microsoft Entra toepassingstoken te verkrijgen voor toegang tot uw cluster. Om de stroom te laten slagen, moet de toepassing zijn geregistreerd met Microsoft Entra-id en moet u over de referenties voor toepassingsverificatie beschikken, zoals een door een Microsoft Entra id uitgegeven toepassingssleutel of een Microsoft Entra geregistreerd X.509v2-certificaat.
Door de klant beheerde sleutels configureren
Azure Data Explorer-versleuteling maakt standaard gebruik van door Microsoft beheerde sleutels. Configureer uw Azure Data Explorer-cluster om door de klant beheerde sleutels te gebruiken en geef de sleutel op die aan het cluster moet worden gekoppeld.
Werk uw cluster bij met behulp van de volgende code:
var tenantId = "xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx"; // Azure AD Directory (tenant) ID
var clientId = "xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx"; // Application ID
var clientSecret = "PlaceholderClientSecret"; // Application secret
var subscriptionId = "xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx";
var credentials = new ClientSecretCredential(tenantId, clientId, clientSecret);
var resourceManagementClient = new ArmClient(credentials, subscriptionId);
var resourceGroupName = "testrg";
var clusterName = "mykustocluster";
var subscription = await resourceManagementClient.GetDefaultSubscriptionAsync();
var resourceGroup = (await subscription.GetResourceGroupAsync(resourceGroupName)).Value;
var clusters = resourceGroup.GetKustoClusters();
var cluster = (await clusters.GetAsync(clusterName)).Value;
var clusterPatch = new KustoClusterPatch(cluster.Data.Location)
{
KeyVaultProperties = new KustoKeyVaultProperties
{
KeyName = "<keyName>",
KeyVersion = "<keyVersion>", // Optional, leave as NULL for the latest version of the key.
KeyVaultUri = new Uri("https://<keyVaultName>.vault.azure.net/"),
UserIdentity = "/subscriptions/<identitySubscriptionId>/resourcegroups/<identityResourceGroupName>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<identityName>" // Use NULL if you want to use system assigned identity.
}
};
await cluster.UpdateAsync(WaitUntil.Completed, clusterPatch);
Voer de volgende opdracht uit om te controleren of uw cluster is bijgewerkt:
var clusterData = (await resourceGroup.GetKustoClusterAsync(clusterName)).Value.Data;
Als het resultaat met de Succeeded waarde bevatProvisioningState, is uw cluster bijgewerkt.
In de volgende stappen wordt uitgelegd hoe u versleuteling van door de klant beheerde sleutels inschakelt met behulp van de Azure CLI-client. Azure Data Explorer-versleuteling maakt standaard gebruik van door Microsoft beheerde sleutels. Configureer uw Azure Data Explorer-cluster om door de klant beheerde sleutels te gebruiken en geef de sleutel op die aan het cluster moet worden gekoppeld.
Voer de volgende opdracht uit om u aan te melden bij Azure:
az login
Stel het abonnement in waar uw cluster is geregistreerd. Vervang MyAzureSub door de naam van het Azure-abonnement dat u wilt gebruiken.
az account set --subscription MyAzureSub
Voer de volgende opdracht uit om de nieuwe sleutel in te stellen met de door het systeem toegewezen identiteit van het cluster
Voer de volgende opdracht uit en controleer de eigenschap 'keyVaultProperties' om te controleren of het cluster is bijgewerkt.
az kusto cluster show --cluster-name "mytestcluster" --resource-group "mytestrg"
In de volgende stappen wordt uitgelegd hoe u versleuteling van door de klant beheerde sleutels inschakelt met behulp van PowerShell. Azure Data Explorer-versleuteling maakt standaard gebruik van door Microsoft beheerde sleutels. Configureer uw Azure Data Explorer-cluster om door de klant beheerde sleutels te gebruiken en geef de sleutel op die aan het cluster moet worden gekoppeld.
Voer de volgende opdracht uit om u aan te melden bij Azure:
Connect-AzAccount
Stel het abonnement in waar uw cluster is geregistreerd.
In de volgende stappen wordt uitgelegd hoe u door de klant beheerde sleutels configureert met behulp van Azure Resource Manager-sjablonen. Azure Data Explorer-versleuteling maakt standaard gebruik van door Microsoft beheerde sleutels. In deze stap configureert u uw Azure Data Explorer-cluster om door de klant beheerde sleutels te gebruiken en geeft u de sleutel op die aan het cluster moet worden gekoppeld.
Als u een door het systeem toegewezen identiteit wilt gebruiken voor toegang tot de sleutelkluis, laat u userIdentity leeg. Stel anders de resource-id van de identiteit in.
U kunt de Azure Resource Manager-sjabloon implementeren met behulp van de Azure Portal of met behulp van PowerShell.
Wanneer u een nieuwe versie van een sleutel maakt, moet u het cluster bijwerken om de nieuwe versie te gebruiken. Roep Get-AzKeyVaultKey eerst aan om de nieuwste versie van de sleutel op te halen. Werk vervolgens de sleutelkluiseigenschappen van het cluster bij om de nieuwe versie van de sleutel te gebruiken, zoals wordt weergegeven in Versleuteling inschakelen met door de klant beheerde sleutels.