Configurare la versione minima di TLS per uno spazio dei nomi di Hub eventi

Gli spazi dei nomi di Hub eventi di Azure consentono ai client di inviare e ricevere dati con TLS 1.0 e versioni successive. Per applicare misure di sicurezza più rigorose, è possibile configurare lo spazio dei nomi di Hub eventi in modo da richiedere che i client inviino e ricevano i dati con una versione più recente di TLS. Se uno spazio dei nomi di Hub eventi richiede una versione minima di TLS, le richieste effettuate con una versione precedente avranno esito negativo. Per informazioni concettuali su questa funzionalità, vedere Imporre una versione minima richiesta di Transport Layer Security (TLS) per le richieste a uno spazio dei nomi di Hub eventi.

È possibile configurare la versione minima di TLS usando il portale di Azure o un modello di Azure Resource Manager (ARM).

Specificare la versione minima di TLS nel portale di Azure

È possibile specificare la versione minima di TLS durante la creazione di uno spazio dei nomi di Hub eventi nel portale di Azure nella scheda Avanzate.

Screenshot showing the page to set the minimum TLS version when creating a namespace.

È anche possibile specificare la versione minima di TLS per uno spazio dei nomi esistente nella pagina Configurazione.

Screenshot showing the page to set the minimum TLS version for an existing namespace.

Creare un modello per configurare la versione minima di TLS

Per configurare la versione minima di TLS per uno spazio dei nomi di Hub eventi con un modello, creare un modello con la proprietà MinimumTlsVersion impostata su 1.0, 1.1 o 1.2. Quando si crea uno spazio dei nomi di Hub eventi con un modello di Azure Resource Manager, la proprietà MinimumTlsVersion viene impostata su 1.2 per impostazione predefinita, a meno che non venga impostata in modo esplicito su un'altra versione.

Nota

Gli spazi dei nomi creati con un valore api-version precedente a 2022-01-01-preview avranno 1.0 come valore per MinimumTlsVersion. Questo comportamento era l'impostazione predefinita precedente ed è ancora disponibile per compatibilità con le versioni precedenti.

La procedura seguente descrive come creare un modello nel portale di Azure.

  1. Nel portale di Azure scegliere Crea una risorsa.

  2. In Cerca nel Marketplace digitare distribuzione personalizzata e quindi premere INVIO.

  3. Scegliere Distribuzione personalizzata (distribuzione tramite modelli personalizzati) (anteprima), scegliere Crea e quindi Crea un modello personalizzato nell'editor.

  4. Nell'editor del modello incollare il codice JSON seguente per creare un nuovo spazio dei nomi e impostare la versione minima di TLS su TLS 1.2. Ricordare di sostituire i segnaposto tra parentesi angolari con valori personalizzati.

    {
        "$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": {}
            }
        ]
    }
    
  5. Scegliere Salva per salvare il modello.

  6. Specificare il parametro del gruppo di risorse, quindi scegliere il pulsante Rivedi e crea per distribuire il modello e creare uno spazio dei nomi con la proprietà MinimumTlsVersion configurata.

Nota

Dopo aver aggiornato la versione minima di TLS per lo spazio dei nomi di Hub eventi, potrebbero essere necessari fino a 30 secondi prima che la modifica venga propagata in modo completo.

La configurazione della versione minima di TLS richiede api-version 2022-01-01-preview o versione successiva del provider di risorse di Hub eventi di Azure.

Controllare la versione minima di TLS richiesta per uno spazio dei nomi

Per controllare la versione minima di TLS richiesta per lo spazio dei nomi di Hub eventi, è possibile eseguire una query sull'API di Azure Resource Manager. Sarà necessario un bearer token per eseguire query sull'API, recuperabile con l'app ARMClient eseguendo i comandi seguenti.

.\ARMClient.exe login
.\ARMClient.exe token <your-subscription-id>

Dopo aver ottenuto il bearer token, è possibile usare lo script seguente in combinazione con un client REST per eseguire query sull'API.

@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}}

La risposta dovrebbe essere simile alla seguente, con il valore minimumTlsVersion impostato tra le proprietà.

{
  "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"
  }
}

Testare la versione minima di TLS in un client

Per verificare che la versione minima di TLS richiesta per uno spazio dei nomi di Hub eventi impedisca le chiamate effettuate con una versione precedente, è possibile configurare un client per l'uso di una versione precedente di TLS. Per altre informazioni sulla configurazione di un client per l'uso di una versione specifica di TLS, vedere Configurare Transport Layer Security (TLS) per un'applicazione client.

Quando un client accede a uno spazio dei nomi di Hub eventi usando una versione di TLS che non soddisfa la versione minima di TLS configurata per lo spazio dei nomi, Hub eventi di Azure restituisce il codice di errore 401 (Non autorizzato) e un messaggio che indica che la versione di TLS usata non è consentita per effettuare richieste in questo spazio dei nomi di Hub eventi.

Nota

A causa di limitazioni nella libreria confluente, gli errori provenienti da una versione TLS non valida non verranno visualizzati durante la connessione tramite il protocollo Kafka. Verrà invece visualizzata un'eccezione generale.

Nota

Quando si configura una versione minima di TLS per uno spazio dei nomi di Hub eventi, tale versione minima viene imposta a livello di applicazione. Gli strumenti che tentano di determinare il supporto di TLS a livello di protocollo possono restituire versioni di TLS oltre alla versione minima richiesta quando vengono eseguiti direttamente sull'endpoint dello spazio dei nomi di Hub eventi.

Passaggi successivi

Per altre informazioni, consulta gli articoli seguenti.