Door de klant beheerde sleutels configureren voor het versleutelen Azure Event Hubs data-at-rest
Azure Event Hubs biedt versleuteling van data-at-rest met Azure Storage Service Encryption (Azure SSE). De Event Hubs service gebruikt Azure Storage om de gegevens op te slaan. Alle gegevens die zijn opgeslagen met Azure Storage worden versleuteld met door Microsoft beheerde sleutels. Als u uw eigen sleutel gebruikt (ook wel Bring Your Own Key (BYOK) of door de klant beheerde sleutel genoemd), worden de gegevens nog steeds versleuteld met behulp van de door Microsoft beheerde sleutel, maar wordt de door Microsoft beheerde sleutel bovendien versleuteld met behulp van de door de klant beheerde sleutel. Met deze functie kunt u de toegang maken, draaien, uitschakelen en intrekken tot door de klant beheerde sleutels die worden gebruikt voor het versleutelen van door Microsoft beheerde sleutels. Het inschakelen van de BYOK-functie is een een keer instellen in uw naamruimte.
Belangrijk
- De BYOK-mogelijkheid wordt ondersteund door premium- en toegewezen lagen van Event Hubs.
- De versleuteling kan alleen worden ingeschakeld voor nieuwe of lege naamruimten. Als de naamruimte Event Hubs bevat, mislukt de versleutelingsbewerking.
U kunt uw Azure Key Vault gebruiken om uw sleutels te beheren en uw sleutelgebruik te controleren. U kunt uw eigen sleutels maken en deze opslaan in een sleutelkluis of u kunt de Azure Key Vault API's gebruiken om sleutels te genereren. Zie Wat is Azure Key Vault? voor meer informatie over Azure Key Vault.
In dit artikel wordt beschreven hoe u een sleutelkluis configureert met door de klant beheerde sleutels met behulp van de Azure Portal. Zie Voor meer informatie over het maken van een sleutelkluis met behulp van de Azure Portal Quickstart: EenAzure Key Vault maken met behulp van Azure Portal .
Door de klant beheerde sleutels inschakelen (Azure Portal)
Als u door de klant beheerde sleutels in de Azure Portal, volgt u deze stappen. Als u de toegewezen laag gebruikt, gaat u eerst naar Event Hubs Dedicated cluster.
Selecteer de naamruimte waarvoor u BYOK wilt inschakelen.
Selecteer op Instellingen pagina van uw Event Hubs naamruimte de optie Versleuteling.
Selecteer de versleuteling van door de klant beheerde sleutels at rest, zoals wordt weergegeven in de volgende afbeelding.

Een sleutelkluis met sleutels instellen
Nadat u door de klant beheerde sleutels hebt ingeschakeld, moet u de door de klant beheerde sleutel koppelen aan Azure Event Hubs naamruimte. Event Hubs ondersteunt alleen Azure Key Vault. Als u de optie Versleuteling met door de klant beheerde sleutel in de vorige sectie inschakelen, moet u de sleutel importeren in Azure Key Vault. Voor de sleutels moet ook De sleutel zijn ingesteld op Soft Delete en Do Not Purge. Deze instellingen kunnen worden geconfigureerd met behulp van PowerShell of CLI.
Als u een nieuwe sleutelkluis wilt maken, volgt u Azure Key Vault Quickstart. Zie Over sleutels, geheimen en certificaten voor meer informatie over het importeren van bestaande sleutels.
Belangrijk
Als u door de klant beheerde sleutels Azure Event Hubs, moet voor de sleutelkluis twee vereiste eigenschappen zijn geconfigureerd. Dit zijn: Soft Delete en Do Not Purge. Deze eigenschappen zijn standaard ingeschakeld wanneer u een nieuwe sleutelkluis in de Azure Portal. Als u deze eigenschappen echter moet inschakelen voor een bestaande sleutelkluis, moet u PowerShell of Azure CLI gebruiken.
Gebruik de opdracht az keyvault create om zowel de beveiliging voor het verwijderen als het opsluizen van een kluis in te zetten.
az keyvault create --name ContosoVault --resource-group ContosoRG --location westus --enable-soft-delete true --enable-purge-protection trueGebruik de opdracht az keyvault update om beveiliging tegen opsluizen toe te voegen aan een bestaande kluis (waar al een soft delete is ingeschakeld).
az keyvault update --name ContosoVault --resource-group ContosoRG --enable-purge-protection trueVolg deze stappen om sleutels te maken:
Als u een nieuwe sleutel wilt maken, selecteert u Genereren/importeren in het menu Sleutels onder Instellingen.

Stel Opties in op Genereren en geef de sleutel een naam.

U kunt deze sleutel nu selecteren om te koppelen aan Event Hubs naamruimte voor versleuteling in de vervolgkeuzelijst.

Notitie
Voor redundantie kunt u maximaal 3 sleutels toevoegen. Als een van de sleutels is verlopen of niet toegankelijk is, worden de andere sleutels gebruikt voor versleuteling.
Vul de details voor de sleutel in en klik op Selecteren. Hiermee wordt de versleuteling van de door Microsoft beheerde sleutel met uw sleutel (door de klant beheerde sleutel) ingeschakeld.
Beheerde identiteiten
Er zijn twee soorten beheerde identiteiten die u kunt toewijzen aan een Event Hubs naamruimte.
Door het systeem toegewezen: u kunt een beheerde identiteit rechtstreeks op een Event Hubs inschakelen. Wanneer u een door het systeem toegewezen beheerde identiteit inschakelen, wordt er een identiteit gemaakt in Azure AD die is gekoppeld aan de levenscyclus van die Event Hubs naamruimte. Wanneer de naamruimte wordt verwijderd, wordt de identiteit dus automatisch door Azure voor u verwijderd. Alleen die Azure-resource (naamruimte) kan deze identiteit gebruiken om tokens aan te vragen bij Azure AD.
Door de gebruiker toegewezen: u kunt ook een beheerde identiteit maken als een zelfstandige Azure-resource, die door de gebruiker toegewezen identiteit wordt genoemd. U kunt een door de gebruiker toegewezen beheerde identiteit maken en deze toewijzen aan een of meer Event Hubs-naamruimten. In het geval van door de gebruiker toegewezen beheerde identiteiten, wordt de identiteit afzonderlijk beheerd van de resources die deze gebruikt. Ze zijn niet gekoppeld aan de levenscyclus van de naamruimte. U kunt een door de gebruiker toegewezen identiteit expliciet verwijderen wanneer u deze niet meer nodig hebt.
Zie Wat zijn beheerde identiteiten voor Azure-resources? voor meer informatie.
Versleutelen met behulp van door het systeem toegewezen identiteiten (sjabloon)
In deze sectie ziet u hoe u de volgende taken uitvoert met behulp Azure Resource Manager sjablonen.
- Maak een Event Hubs-naamruimte met een beheerde service-identiteit.
- Maak een sleutelkluis en verleen de service-id toegang tot de sleutelkluis.
- Werk de Event Hubs bij met de sleutelkluisgegevens (sleutel/waarde).
Een cluster Event Hubs naamruimte maken met beheerde service-identiteit
In deze sectie ziet u hoe u een Azure Event Hubs met beheerde service-identiteit maakt met behulp van een Azure Resource Manager en PowerShell.
Maak een Azure Resource Manager om een Event Hubs maken met een beheerde service-identiteit. Noem het bestand: CreateEventHubClusterAndNamespace.jsop:
{ "$schema":"https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", "contentVersion":"1.0.0.0", "parameters":{ "clusterName":{ "type":"string", "metadata":{ "description":"Name for the Event Hub cluster." } }, "namespaceName":{ "type":"string", "metadata":{ "description":"Name for the Namespace to be created in cluster." } }, "location":{ "type":"string", "defaultValue":"[resourceGroup().location]", "metadata":{ "description":"Specifies the Azure location for all resources." } } }, "resources":[ { "type":"Microsoft.EventHub/clusters", "apiVersion":"2018-01-01-preview", "name":"[parameters('clusterName')]", "location":"[parameters('location')]", "sku":{ "name":"Dedicated", "capacity":1 } }, { "type":"Microsoft.EventHub/namespaces", "apiVersion":"2018-01-01-preview", "name":"[parameters('namespaceName')]", "location":"[parameters('location')]", "identity":{ "type":"SystemAssigned" }, "sku":{ "name":"Standard", "tier":"Standard", "capacity":1 }, "properties":{ "isAutoInflateEnabled":false, "maximumThroughputUnits":0, "clusterArmId":"[resourceId('Microsoft.EventHub/clusters', parameters('clusterName'))]" }, "dependsOn":[ "[resourceId('Microsoft.EventHub/clusters', parameters('clusterName'))]" ] } ], "outputs":{ "EventHubNamespaceId":{ "type":"string", "value":"[resourceId('Microsoft.EventHub/namespaces',parameters('namespaceName'))]" } } }Maak een sjabloonparameterbestand met de naamCreateEventHubClusterAndNamespaceParams.jsop.
Notitie
Vervang de volgende waarden:
<EventHubsClusterName>- Naam van uw Event Hubs cluster<EventHubsNamespaceName>- Naam van uw Event Hubs naamruimte<Location>- Locatie van uw Event Hubs naamruimte
{ "$schema":"https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#", "contentVersion":"1.0.0.0", "parameters":{ "clusterName":{ "value":"<EventHubsClusterName>" }, "namespaceName":{ "value":"<EventHubsNamespaceName>" }, "location":{ "value":"<Location>" } } }Voer de volgende PowerShell-opdracht uit om de sjabloon te implementeren om een Event Hubs maken. Haal vervolgens de id van de Event Hubs op om deze later te gebruiken. Vervang
{MyRG}door de naam van de resourcegroep voordat u de opdracht gaat uitvoeren.$outputs = New-AzResourceGroupDeployment -Name CreateEventHubClusterAndNamespace -ResourceGroupName {MyRG} -TemplateFile ./CreateEventHubClusterAndNamespace.json -TemplateParameterFile ./CreateEventHubClusterAndNamespaceParams.json $EventHubNamespaceId = $outputs.Outputs["eventHubNamespaceId"].value
Toegang Event Hubs naamruimte-id verlenen tot key vault
Voer de volgende opdracht uit om een sleutelkluis te maken met beveiliging tegen opsluizen en soft-delete ingeschakeld.
New-AzureRmKeyVault -Name {keyVaultName} -ResourceGroupName {RGName} -Location {location} -EnableSoftDelete -EnablePurgeProtection(OF)
Voer de volgende opdracht uit om een bestaande sleutelkluis bij te werken. Geef waarden op voor resourcegroep- en sleutelkluisnamen voordat u de opdracht gaat uitvoeren.
($updatedKeyVault = Get-AzureRmResource -ResourceId (Get-AzureRmKeyVault -ResourceGroupName {RGName} -VaultName {keyVaultName}).ResourceId).Properties| Add-Member -MemberType "NoteProperty" -Name "enableSoftDelete" -Value "true"-Force | Add-Member -MemberType "NoteProperty" -Name "enablePurgeProtection" -Value "true" -ForceStel het toegangsbeleid voor de sleutelkluis zo in dat de beheerde identiteit van de Event Hubs-naamruimte toegang heeft tot de sleutelwaarde in de sleutelkluis. Gebruik de id van de Event Hubs naamruimte uit de vorige sectie.
$identity = (Get-AzureRmResource -ResourceId $EventHubNamespaceId -ExpandProperties).Identity Set-AzureRmKeyVaultAccessPolicy -VaultName {keyVaultName} -ResourceGroupName {RGName} -ObjectId $identity.PrincipalId -PermissionsToKeys get,wrapKey,unwrapKey,list
Gegevens in Event Hubs-naamruimte versleutelen met door de klant beheerde sleutel uit key vault
U hebt tot nu toe de volgende stappen uitgevoerd:
- U hebt een Premium-naamruimte gemaakt met een beheerde identiteit.
- Maak een sleutelkluis en verleende de beheerde identiteit toegang tot de sleutelkluis.
In deze stap gaat u de naamruimte Event Hubs sleutelkluisgegevens bijwerken.
Maak een JSON-bestand metCreateEventHubClusterAndNamespace.jsmet de volgende inhoud:
{ "$schema":"https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", "contentVersion":"1.0.0.0", "parameters":{ "clusterName":{ "type":"string", "metadata":{ "description":"Name for the Event Hub cluster." } }, "namespaceName":{ "type":"string", "metadata":{ "description":"Name for the Namespace to be created in cluster." } }, "location":{ "type":"string", "defaultValue":"[resourceGroup().location]", "metadata":{ "description":"Specifies the Azure location for all resources." } }, "keyVaultUri":{ "type":"string", "metadata":{ "description":"URI of the KeyVault." } }, "keyName":{ "type":"string", "metadata":{ "description":"KeyName." } } }, "resources":[ { "type":"Microsoft.EventHub/namespaces", "apiVersion":"2018-01-01-preview", "name":"[parameters('namespaceName')]", "location":"[parameters('location')]", "identity":{ "type":"SystemAssigned" }, "sku":{ "name":"Standard", "tier":"Standard", "capacity":1 }, "properties":{ "isAutoInflateEnabled":false, "maximumThroughputUnits":0, "clusterArmId":"[resourceId('Microsoft.EventHub/clusters', parameters('clusterName'))]", "encryption":{ "keySource":"Microsoft.KeyVault", "keyVaultProperties":[ { "keyName":"[parameters('keyName')]", "keyVaultUri":"[parameters('keyVaultUri')]" } ] } } } ] }Maak een sjabloonparameterbestand: UpdateEventHubClusterAndNamespaceParams.jsop.
Notitie
Vervang de volgende waarden:
<EventHubsClusterName>- Naam van uw Event Hubs cluster.<EventHubsNamespaceName>- Naam van uw Event Hubs naamruimte<Location>- Locatie van uw Event Hubs naamruimte<KeyVaultName>- Naam van uw sleutelkluis<KeyName>- Naam van de sleutel in de sleutelkluis
{ "$schema":"https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#", "contentVersion":"1.0.0.0", "parameters":{ "clusterName":{ "value":"<EventHubsClusterName>" }, "namespaceName":{ "value":"<EventHubsNamespaceName>" }, "location":{ "value":"<Location>" }, "keyName":{ "value":"<KeyName>" }, "keyVaultUri":{ "value":"https://<KeyVaultName>.vault.azure.net" } } }Voer de volgende PowerShell-opdracht uit om de sjabloon Resource Manager implementeren. Vervang
{MyRG}door de naam van de resourcegroep voordat u de opdracht gaat uitvoeren.New-AzResourceGroupDeployment -Name UpdateEventHubNamespaceWithEncryption -ResourceGroupName {MyRG} -TemplateFile ./UpdateEventHubClusterAndNamespace.json -TemplateParameterFile ./UpdateEventHubClusterAndNamespaceParams.json
Versleutelen met behulp van door de gebruiker toegewezen identiteiten (sjabloon)
- Maak een door de gebruiker toegewezen identiteit.
- Maak een sleutelkluis en verleen toegang tot de door de gebruiker toegewezen identiteit via toegangsbeleid.
- Maak een Event Hubs-naamruimte met de beheerde gebruikersidentiteit en de sleutelkluisgegevens.
Een door de gebruiker toegewezen identiteit maken
Volg de instructies in het artikel Een door de gebruiker toegewezen beheerde identiteit maken om een door de gebruiker toegewezen identiteit te maken. U kunt ook een door de gebruiker toegewezen identiteit maken met behulp van CLI, PowerShell, Azure Resource Manager sjabloonen REST.
Notitie
U kunt maximaal vier gebruikersidentiteiten toewijzen aan een naamruimte. Deze verbanden worden verwijderd wanneer de naamruimte wordt verwijderd of wanneer u de identity -> type in de sjabloon door te geven aan None .
Een sleutelkluis maken en toegang verlenen tot een door de gebruiker toegewezen identiteit
Voer de volgende opdracht uit om een sleutelkluis te maken met beveiliging tegen opsluizen en soft-delete ingeschakeld.
New-AzureRmKeyVault -Name "{keyVaultName}" -ResourceGroupName {RGName} -Location "{location}" -EnableSoftDelete -EnablePurgeProtection(OF)
Voer de volgende opdracht uit om een bestaande sleutelkluis bij te werken. Geef waarden op voor resourcegroep- en sleutelkluisnamen voordat u de opdracht gaat uitvoeren.
($updatedKeyVault = Get-AzureRmResource -ResourceId (Get-AzureRmKeyVault -ResourceGroupName {RGName} -VaultName {keyVaultName}).ResourceId).Properties| Add-Member -MemberType "NoteProperty" -Name "enableSoftDelete" -Value "true"-Force | Add-Member -MemberType "NoteProperty" -Name "enablePurgeProtection" -Value "true" -ForceHaal de service-principal-id voor de gebruikers-id op met behulp van de volgende PowerShell-opdracht. In het voorbeeld is de door de gebruiker toegewezen identiteit die moet
ud1worden gebruikt voor versleuteling.$servicePrincipal=Get-AzADServicePrincipal -SearchString "ud1"Verleen de door de gebruiker toegewezen identiteit toegang tot de sleutelkluis door een toegangsbeleid toe te wijzen.
Set-AzureRmKeyVaultAccessPolicy -VaultName {keyVaultName} -ResourceGroupName {RGName} -ObjectId $servicePrincipal.Id -PermissionsToKeys get,wrapKey,unwrapKey,listNotitie
U kunt maximaal 3 sleutels toevoegen, maar de gebruikersidentiteit die wordt gebruikt voor versleuteling moet hetzelfde zijn voor alle sleutels. Op dit moment wordt slechts één versleutelingsidentiteit ondersteund.
Een Event Hubs maken met gebruikersidentiteit en sleutelkluisgegevens
In deze sectie ziet u een voorbeeld van hoe u de volgende taken uitvoert met behulp van een Azure Resource Manager sjabloon.
Wijs een door de gebruiker beheerde identiteit toe aan Event Hubs naamruimte.
"identity": { "type": "UserAssigned", "userAssignedIdentities": { "[parameters('identity').userAssignedIdentity]": {} } },Schakel versleuteling voor de naamruimte in door een sleutel uit uw sleutelkluis en de door de gebruiker beheerde identiteit op te geven voor toegang tot de sleutel.
"encryption":{ "keySource":"Microsoft.KeyVault", "keyVaultProperties":[ { "keyName": "[parameters('keyName')]", "keyVaultUri": "[parameters('keyVaultUri')]", "identity": { "userAssignedIdentity": "[parameters('identity').userAssignedIdentity]" } } ] }
Maak een JSON-bestand CreateEventHubsNamespaceWithUserIdentityAndEncryption.jsmet de volgende inhoud:
{ "$schema":"https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", "contentVersion":"1.0.0.0", "parameters":{ "clusterName":{ "type":"string", "metadata":{ "description":"Name for the Event Hub cluster." } }, "namespaceName":{ "type":"string", "metadata":{ "description":"Name for the Namespace to be created in cluster." } }, "location":{ "type":"string", "defaultValue":"[resourceGroup().location]", "metadata":{ "description":"Specifies the Azure location for all resources." } }, "keyVaultUri":{ "type":"string", "metadata":{ "description":"URI of the KeyVault." } }, "keyName":{ "type":"string", "metadata":{ "description":"KeyName." }, "identity": { "type": "Object", "defaultValue": { "userAssignedIdentity": "" }, "metadata": { "description": "user-assigned identity." } } }, "resources":[ { "type":"Microsoft.EventHub/clusters", "apiVersion":"2018-01-01-preview", "name":"[parameters('clusterName')]", "location":"[parameters('location')]", "sku":{ "name":"Dedicated", "capacity":1 } }, { "type":"Microsoft.EventHub/namespaces", "apiVersion":"2021-01-01-preview", "name":"[parameters('namespaceName')]", "location":"[parameters('location')]", "sku":{ "name":"Standard", "tier":"Standard", "capacity":1 }, "identity": { "type": "UserAssigned", "userAssignedIdentities": { "[parameters('identity').userAssignedIdentity]": {} } }, "properties":{ "encryption":{ "keySource":"Microsoft.KeyVault", "keyVaultProperties":[ { "keyName": "[parameters('keyName')]", "keyVaultUri": "[parameters('keyVaultUri')]", "identity": { "userAssignedIdentity": "[parameters('identity').userAssignedIdentity]" } } ] } } } ] }Maak een sjabloonparameterbestand: CreateEventHubsNamespaceWithUserIdentityAndEncryptionParams.jsop.
{ "$schema":"https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#", "contentVersion":"1.0.0.0", "parameters":{ "namespaceName":{ "value":"<EventHubsNamespaceName>" }, "location":{ "value":"<Location>" }, "keyVaultUri":{ "value":"https://<KeyVaultName>.vault.azure.net" }, "keyName":{ "value":"<KeyName>" }, "identity": { "value": { "userAssignedIdentity": "/subscriptions/<AZURE SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP NAME>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<USER MANAGED IDENTITY NAME>" } } } }Vervang in het parameterbestand tijdelijke aanduidingen door de juiste waarden.
Tijdelijke aanduiding waarde <EventHubsNamespaceName>Naam van de Event Hubs naamruimte. <Location>De locatie waar u de naamruimte wilt maken. <KeyVaultName>Naam van de sleutelkluis. <KeyName>Naam van de sleutel in de sleutelkluis. <AZURE SUBSCRIPTION ID>Uw Azure-abonnements-id. <RESOURCE GROUP NAME>Resourcegroep van de door de gebruiker beheerde identiteit. <USER MANAGED IDENTITY NAME>Naam van de door de gebruiker beheerde identiteit. Voer de volgende PowerShell-opdracht uit om de sjabloon Resource Manager implementeren. Vervang
{MyRG}door de naam van de resourcegroep voordat u de opdracht gaat uitvoeren.New-AzResourceGroupDeployment -Name CreateEventHubsNamespaceWithEncryption -ResourceGroupName {MyRG} -TemplateFile ./ CreateEventHubsNamespaceWithUserIdentityAndEncryption.json -TemplateParameterFile ./ CreateEventHubsNamespaceWithUserIdentityAndEncryptionParams.json
Door de gebruiker toegewezen en door het systeem toegewezen identiteiten gebruiken
Een naamruimte kan tegelijkertijd zowel door het systeem toegewezen als door de gebruiker toegewezen identiteiten hebben. In dit geval is de type eigenschap , zoals wordt weergegeven in het volgende SystemAssigned UserAssigned voorbeeld.
"identity": {
"type": "SystemAssigned, UserAssigned",
"userAssignedIdentities": {
"/subscriptions/<SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<userIdentity1>" : {}
}
}
In dit scenario kunt u de door het systeem toegewezen identiteit of de door de gebruiker toegewezen identiteit kiezen voor het versleutelen van de data-at-rest.
Als u Resource Manager een kenmerk opgeeft, wordt in de sjabloon een door het systeem beheerde identity identiteit gebruikt. Hier is een voorbeeldfragment.
"properties":{
"encryption":{
"keySource":"Microsoft.KeyVault",
"keyVaultProperties":[
{
"keyName":"[parameters('keyName')]",
"keyVaultUri":"[parameters('keyVaultUri')]"
}
]
}
}
Zie het volgende voorbeeld voor het gebruik van de door de gebruiker beheerde identiteit voor de versleuteling. U ziet identity dat het kenmerk is ingesteld op de door de gebruiker beheerde identiteit.
"properties":{
"encryption":{
"keySource":"Microsoft.KeyVault",
"keyVaultProperties":[
{
"keyName":"[parameters('keyName')]",
"keyVaultUri":"[parameters('keyVaultUri')]",
"identity": {
"userAssignedIdentity": "[parameters('identity').userAssignedIdentity]"
}
}
]
}
}
Infrastructuurversleuteling (of dubbele) versleuteling van gegevens inschakelen
Als u een hoger niveau van zekerheid wilt dat uw gegevens veilig zijn, kunt u versleuteling op infrastructuurniveau inschakelen. Dit wordt ook wel dubbele versleuteling genoemd.
Wanneer infrastructuurversleuteling is ingeschakeld, worden gegevens in het Event Hubs-naamruimteaccount twee keer versleuteld, eenmaal op serviceniveau en eenmaal op infrastructuurniveau, met behulp van twee verschillende versleutelingsalgoritmen en twee verschillende sleutels. Daarom beschermt infrastructuurversleuteling Event Hubs gegevens tegen een scenario waarin een van de versleutelingsalgoritmen of sleutels kan worden aangetast.
U kunt infrastructuurversleuteling inschakelen door de Azure Resource Manager bij te werken met de eigenschap inCreateEventHubClusterAndNamespace.jsrequireInfrastructureEncryption zie hieronder.
"properties":{
"isAutoInflateEnabled":false,
"maximumThroughputUnits":0,
"clusterArmId":"[resourceId('Microsoft.EventHub/clusters', parameters('clusterName'))]",
"encryption":{
"keySource":"Microsoft.KeyVault",
"requireInfrastructureEncryption":true,
"keyVaultProperties":[
{
"keyName":"[parameters('keyName')]",
"keyVaultUri":"[parameters('keyVaultUri')]"
}
]
}
}
Versleutelingssleutels roteren, intrekken en cachen
Uw versleutelingssleutels roteren
U kunt uw sleutel roteren in de sleutelkluis met behulp van het roulatiemechanisme van Azure Key Vaults. Activerings- en vervaldatums kunnen ook worden ingesteld om sleutelrotatie te automatiseren. De Event Hubs-service detecteert nieuwe sleutelversies en begint deze automatisch te gebruiken.
Toegang tot sleutels intrekken
Als u de toegang tot de versleutelingssleutels inroept, worden de gegevens niet uit de Event Hubs. De gegevens zijn echter niet toegankelijk vanuit de Event Hubs naamruimte. U kunt de versleutelingssleutel intrekken via toegangsbeleid of door de sleutel te verwijderen. Meer informatie over toegangsbeleid en het beveiligen van uw sleutelkluis van Beveiligde toegang tot een sleutelkluis.
Zodra de versleutelingssleutel is ingetrokken, Event Hubs de versleutelde naamruimte niet meer worden gebruikt. Als de toegang tot de sleutel is ingeschakeld of de verwijdersleutel is hersteld, kiest Event Hubs-service de sleutel, zodat u toegang hebt tot de gegevens vanuit de versleutelde Event Hubs-naamruimte.
Caching sleutels
De Event Hubs -instantie (Event Hub) peilt elke vijf minuten de vermelde versleutelingssleutels. Deze worden in de cache opgeslagen en gebruikt tot de volgende poll, die na 5 minuten is. Zolang er ten minste één sleutel beschikbaar is, is de Event Hub toegankelijk. Als alle vermelde sleutels niet toegankelijk zijn wanneer er polls worden weergegeven, zijn alle Event Hubs niet meer beschikbaar.
Hier vindt u meer informatie:
- Om de vijf minuten peilt Event Hubs service alle door de klant beheerde sleutels die worden vermeld in de record van de naamruimte:
- Als een sleutel is geroteerd, wordt de record bijgewerkt met de nieuwe sleutel.
- Als een sleutel is ingetrokken, wordt de sleutel uit de record verwijderd.
- Als alle sleutels zijn ingetrokken, wordt de versleutelingsstatus van de naamruimte ingesteld op Ingetrokken. De gegevens zijn niet toegankelijk vanuit de Event Hubs-naamruimte.'
Overwegingen bij het gebruik van geo-noodherstel
Belangrijk
Als u Geo-DR wilt inschakelen voor een naamruimte die de BYOK-versleuteling gebruikt, moet voor de secundaire naamruimte voor koppelen een door het systeem toegewezen of door de gebruiker toegewezen beheerde identiteit zijn ingeschakeld.
Herstel na geo-nood : versleuteling met door het systeem toegewezen identiteiten
Als u versleuteling van door Microsoft beheerde sleutels wilt inschakelen met een door de klant beheerde sleutel, wordt een toegangsbeleid ingesteld voor een door het systeem toegewezen beheerde identiteit op de opgegeven Azure KeyVault. Dit zorgt voor beheerde toegang tot De Azure KeyVault vanuit Azure Event Hubs naamruimte.
Als gevolg van deze:
- Als geo-herstel na noodherstel al is ingeschakeld voor de Event Hubs-naamruimte en u op zoek bent naar de door de klant beheerde sleutel, dan
- Verbreed de koppeling.
- Stel het toegangsbeleid in voor de door het systeem toegewezen beheerde identiteit voor de primaire en secundaire naamruimten voor de sleutelkluis.
- Stel versleuteling in voor de primaire naamruimte.
- Koppel de primaire en secundaire naamruimten opnieuw.
- Als u Geo-DR wilt inschakelen voor een Event Hubs-naamruimte waarin de door de klant beheerde sleutel al is ingesteld, volgt u deze stappen:
- Stel het toegangsbeleid voor de beheerde identiteit in voor de secundaire naamruimte voor de sleutelkluis.
- Koppel de primaire en secundaire naamruimten.
Geo-noodherstel: versleuteling met door de gebruiker toegewezen identiteiten
Hier volgen enkele aanbevelingen:
- Maak een beheerde identiteit en wijs Key Vault toe aan uw beheerde identiteit.
- Voeg de identiteit toe als een door de gebruiker toegewezen identiteit en schakel versleuteling met de identiteit in beide naamruimten in.
- Naamruimten koppelen
Voorwaarden voor het inschakelen van geo-DR en versleuteling User-Assigned identiteiten:
- Voor de secundaire naamruimte moet versleuteling al zijn ingeschakeld met een User-Assigned-identiteit als deze moet worden gekoppeld aan een primaire naamruimte waar Versleuteling is ingeschakeld.
- Het is niet mogelijk om versleuteling in te stellen op een al gekoppelde primaire, zelfs niet als de secundaire een User-Assigned is gekoppeld aan de naamruimte.
Diagnostische logboeken instellen
Als u diagnostische logboeken instelt voor byok-naamruimten, krijgt u de vereiste informatie over de bewerkingen. Deze logboeken kunnen worden ingeschakeld en later worden gestreamd naar een Event Hub of worden geanalyseerd via log analytics of gestreamd naar de opslag om aangepaste analyses uit te voeren. Zie Overzicht van Diagnostische logboeken van Azure voor meer informatie over diagnostische logboeken. Zie Gegevensreferentie controleren voor het schema.
Volgende stappen
Zie de volgende artikelen: