Konfigurera den lägsta TLS-versionen för ett Event Hubs-namnområde
Azure Event Hubs namnrymder tillåter klienter att skicka och ta emot data med TLS 1.0 och senare. Om du vill tillämpa strängare säkerhetsåtgärder kan du konfigurera Event Hubs-namnområdet så att klienterna skickar och tar emot data med en nyare version av TLS. Om en Event Hubs-namnrymd kräver en lägsta version av TLS misslyckas alla begäranden som görs med en äldre version. Konceptuell information om den här funktionen finns i Framtvinga en lägsta version av TLS (Transport Layer Security) för begäranden till ett Event Hubs-namnområde.
Du kan konfigurera den lägsta TLS-versionen med hjälp av mallen Azure Portal eller Azure Resource Manager (ARM).
Ange den lägsta TLS-versionen i Azure Portal
Du kan ange den lägsta TLS-versionen när du skapar ett Event Hubs-namnområde i Azure Portal på fliken Avancerat.
Du kan också ange den lägsta TLS-versionen för ett befintligt namnområde på sidan Konfiguration .
Skapa en mall för att konfigurera lägsta TLS-version
Om du vill konfigurera den lägsta TLS-versionen för ett Event Hubs-namnområde med en mall skapar du en mall med MinimumTlsVersion
egenskapen inställd på 1.0, 1.1 eller 1.2. När du skapar ett Event Hubs-namnområde med en Azure Resource Manager-mall MinimumTlsVersion
anges egenskapen till 1.2 som standard, såvida den inte uttryckligen anges till en annan version.
Anteckning
Namnområden som skapats med en API-version före 2022-01-01-preview har 1,0 som värde för MinimumTlsVersion
. Det här beteendet var den tidigare standardinställningen och finns fortfarande för bakåtkompatibilitet.
Följande steg beskriver hur du skapar en mall i Azure Portal.
I Azure Portal väljer du Skapa en resurs.
I Sök på Marketplace skriver du anpassad distribution och trycker sedan på RETUR.
Välj Anpassad distribution (distribuera med anpassade mallar) (förhandsversion), välj Skapa och välj sedan Skapa en egen mall i redigeraren.
I mallredigeraren klistrar du in följande JSON för att skapa ett nytt namnområde och anger den lägsta TLS-versionen till TLS 1.2. Kom ihåg att ersätta platshållarna inom vinkelparenteser med dina egna värden.
{ "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": {}, "variables": { "eventHubNamespaceName": "[concat(uniqueString(subscription().subscriptionId), 'tls')]" }, "resources": [ { "name": "[variables('eventHubNamespaceName')]", "type": "Microsoft.EventHub/namespaces", "apiVersion": "2022-01-01-preview", "location": "westeurope", "properties": { "minimumTlsVersion": "1.2" }, "dependsOn": [], "tags": {} } ] }
Spara mallen.
Ange resursgruppsparameter och välj sedan knappen Granska + skapa för att distribuera mallen och skapa ett namnområde med den
MinimumTlsVersion
konfigurerade egenskapen.
Anteckning
När du har uppdaterat den lägsta TLS-versionen för Event Hubs-namnområdet kan det ta upp till 30 sekunder innan ändringen är helt spridd.
För att konfigurera den lägsta TLS-versionen krävs api-version 2022-01-01-preview eller senare av Azure Event Hubs resursprovider.
Kontrollera den lägsta TLS-versionen som krävs för ett namnområde
Om du vill kontrollera den lägsta TLS-version som krävs för Event Hubs-namnområdet kan du fråga Azure Resource Manager-API:et. Du behöver en ägartoken för att köra frågor mot API:et, som du kan hämta med hjälp av ARMClient-appen genom att köra följande kommandon.
.\ARMClient.exe login
.\ARMClient.exe token <your-subscription-id>
När du har din ägartoken kan du använda skriptet nedan i kombination med något som liknar REST Client för att fråga API:et.
@token = Bearer <Token received from ARMClient>
@subscription = <your-subscription-id>
@resourceGroup = <your-resource-group-name>
@namespaceName = <your-namespace-name>
###
GET https://management.azure.com/subscriptions/{{subscription}}/resourceGroups/{{resourceGroup}}/providers/Microsoft.EventHub/namespaces/{{namespaceName}}?api-version=2022-01-01-preview
content-type: application/json
Authorization: {{token}}
Svaret bör se ut ungefär som nedan, med minimumTlsVersion inställt under egenskaperna.
{
"sku": {
"name": "Premium",
"tier": "Premium",
"capacity": 1
},
"id": "/subscriptions/<your-subscription-id>/resourceGroups/<your-resource-group-name>/providers/Microsoft.EventHub/namespaces/<your-namespace-name>",
"name": "<your-namespace-name>",
"type": "Microsoft.EventHub/Namespaces",
"location": "West Europe",
"properties": {
"minimumTlsVersion": "1.2",
"publicNetworkAccess": "Enabled",
"disableLocalAuth": false,
"zoneRedundant": true,
"isAutoInflateEnabled": false,
"maximumThroughputUnits": 0,
"kafkaEnabled": true,
"provisioningState": "Succeeded",
"status": "Active"
}
}
Testa den lägsta TLS-versionen från en klient
Om du vill testa att den lägsta TLS-version som krävs för ett Event Hubs-namnområde förbjuder anrop som görs med en äldre version kan du konfigurera en klient att använda en äldre version av TLS. Mer information om hur du konfigurerar en klient för att använda en viss version av TLS finns i Konfigurera TLS (Transport Layer Security) för ett klientprogram.
När en klient använder ett Event Hubs-namnområde med en TLS-version som inte uppfyller den lägsta TLS-version som konfigurerats för namnområdet, returnerar Azure Event Hubs felkod 401 (obehörig) och ett meddelande som anger att TLS-versionen som användes inte är tillåten för att göra begäranden mot event hubs-namnområdet.
Anteckning
På grund av begränsningar i confluent-biblioteket visas inte fel som kommer från en ogiltig TLS-version när du ansluter via Kafka-protokollet. I stället visas ett allmänt undantag.
Anteckning
När du konfigurerar en lägsta TLS-version för ett Event Hubs-namnområde tillämpas den lägsta versionen på programlagret. Verktyg som försöker fastställa TLS-stöd på protokolllagret kan returnera TLS-versioner utöver den lägsta version som krävs när de körs direkt mot Event Hubs-namnområdesslutpunkten.
Nästa steg
Mer information finns i följande artiklar.