Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
GILT FÜR:
NoSQL
MongoDB
Kassandra
Kobold
Tabelle
In diesem Artikel wird erläutert, wie Sie mithilfe einer Self-Service-API eine Mindestversion des TLS-Protokolls (Transport Layer Security) für Ihr Cosmos DB-Konto erzwingen.
Funktionsweise der Erzwingung der TLS-Mindestversion in Azure Cosmos DB
Die mehrinstanzenfähige Natur von Cosmos DB erfordert den Dienst, um die Zugriffs- und Sicherheitsanforderungen jedes Benutzers zu erfüllen. Um dies zu erreichen, erzwingt Cosmos DB mindeste TLS-Protokolle auf der Anwendungsebene und nicht auf niedrigeren Ebenen im Netzwerkstapel, in dem TLS betrieben wird. Diese Erzwingung erfolgt bei jeder authentifizierten Anforderung an ein bestimmtes Datenbankkonto gemäß den Einstellungen, die der Kunde für dieses Konto festgelegt hat.
Die mindestens serviceweite akzeptierte Version ist TLS 1.2. Diese Auswahl kann auf Kontobasis geändert werden, wie im folgenden Abschnitt erläutert.
Festlegen der TLS-Mindestversion für mein Cosmos DB-Datenbankkonto
Ab Version 2022-11-15 der Azure Cosmos DB-Ressourcenanbieter-API wird für jedes Cosmos DB-Datenbankkonto eine neue Eigenschaft verfügbar gemacht, die aufgerufen minimalTlsVersionwird. Er akzeptiert den folgenden Wert:
-
Tls12zum Festlegen der Mindestversion auf TLS 1.2
Der Standardwert für neue Konten lautet Tls12.
Wichtig
Ab dem 31. August 2025 müssen alle Cosmos DB-Datenbankkonten Transport Layer Security (TLS) 1.2 oder höher verwenden, da die Unterstützung für TLS 1.0 und 1.1 eingestellt wird.
Ab dem 31. März 2025 ist die Unterstützung für TLS 1.3 für Azure Cosmos DB aktiviert.
Festlegen des mindesten TLS-Protokolls mithilfe des Azure-Portals
Dieses Self-Serve-Feature ist im Azure-Portal beim Erstellen und Bearbeiten eines Kontos verfügbar. Azure Cosmos DB-Konten erzwingen das TLS 1.2-Protokoll. Azure Cosmos DB unterstützt jedoch je nach ausgewählter API-Art auch die folgenden TLS-Protokolle.
- MongoDB: TLS 1.2
- Cassandra: TLS 1.2
- Tabelle, SQL und Graph: TLS 1.2
Schritte zum Festlegen des mindesten TLS-Protokolls beim Erstellen eines Kontos
Wenn Sie eine API-Art verwenden, die nur TLS 1.2 unterstützt, werden Sie auf der Registerkarte "Netzwerk " feststellen, dass das TLS-Protokoll deaktiviert ist.
Wenn Sie eine API-Art verwenden, die mehrere TLS-Protokolle akzeptiert, können Sie zur Registerkarte " Netzwerk " navigieren und die Option "Minimum Transport Layer Security Protocol " verfügbar sein. Sie können das ausgewählte Protokoll ändern, indem Sie einfach auf die Dropdownliste klicken und das gewünschte Protokoll auswählen.
Nach dem Einrichten Ihres Kontos können Sie auf der Registerkarte " Überprüfen + erstellen " unter "Netzwerk" überprüfen, dass das ausgewählte TLS-Protokoll wie angegeben festgelegt ist.
Schritte zum Festlegen des minimalen TLS-Protokolls beim Bearbeiten eines Kontos
Navigieren Sie im Azure-Portal zu Ihrem Azure Cosmos DB-Konto.
Wählen Sie im Randleistenmenü " Netzwerk " und dann die Registerkarte "Konnektivität " aus.
Sie finden die Option "Minimum Transport Layer Security Protocol" . Wenn Sie eine API-Art verwenden, die nur TLS 1.2 unterstützt, werden Sie feststellen, dass diese Option deaktiviert ist. Andernfalls können Sie das gewünschte TLS-Protokoll auswählen, indem Sie einfach darauf klicken.
Wählen Sie "Speichern" aus, nachdem Sie das TLS-Protokoll geändert haben.
Nachdem sie gespeichert wurde, erhalten Sie eine Erfolgsbenachrichtigung. Dennoch kann es bis zu 15 Minuten dauern, bis diese Änderung wirksam wird, nachdem das Konfigurationsupdate abgeschlossen ist.
Festlegen über die Azure-Befehlszeilenschnittstelle
Verwenden Sie zum Festlegen über die Azure CLI den Befehl:
rg="myresourcegroup"
dbName="mycosmosdbaccount"
minimalTlsVersion="Tls12"
az cosmosdb update -n $dbName -g $rg --minimal-tls-version $minimalTlsVersion
Festlegen über Azure PowerShell
Verwenden Sie zum Festlegen über Azure PowerShell den Befehl:
$minimalTlsVersion = "Tls12"
Update-AzCosmosDBAccount -ResourceGroupName myresourcegroup -Name mycosmosdbaccount -MinimalTlsVersion $minimalTlsVersion
Festlegen per ARM-Vorlage
Wenn Sie diese Eigenschaft mithilfe einer ARM-Vorlage festlegen möchten, aktualisieren Sie Ihre vorhandene Vorlage, oder exportieren Sie eine neue Vorlage für Ihre aktuelle Bereitstellung. Fügen Sie dann "minimalTlsVersion" mit dem gewünschten Wert für die TLS-Mindestversion zu den Eigenschaften für die databaseAccounts-Ressourcen hinzu. Das folgende Beispiel zeigt eine einfache Azure Resource Manager-Vorlage mit dieser Eigenschaftseinstellung mithilfe eines Parameters.
{
{
"type": "Microsoft.DocumentDB/databaseAccounts",
"name": "mycosmosdbaccount",
"apiVersion": "2022-11-15",
"location": "[parameters('location')]",
"kind": "GlobalDocumentDB",
"properties": {
"consistencyPolicy": {
"defaultConsistencyLevel": "[parameters('defaultConsistencyLevel')]",
"maxStalenessPrefix": 1,
"maxIntervalInSeconds": 5
},
"locations": [
{
"locationName": "[parameters('location')]",
"failoverPriority": 0
}
],
"locations": "[variable('locations')]",
"databaseAccountOfferType": "Standard",
"minimalTlsVersion": "[parameters('minimalTlsVersion')]",
}
}
}
Wichtig
Schließen Sie bei der erneuten Bereitstellung mit dieser Eigenschaft auch die anderen Eigenschaften für Ihr Konto und Ihre untergeordneten Ressourcen mit ein. Stellen Sie diese Vorlage nicht wie folgt bereit, oder sie setzt alle Ihre Kontoeigenschaften zurück.
Für neue Konten
Sie können Konten mit dem Eigenschaftensatz mithilfe der minimalTlsVersion vorherigen ARM-Vorlage oder mit Azure CLI oder Azure PowerShell erstellen:
az cosmosdb create --name <CosmosDBAccountName> \
--resource-group <ResourceGroupName> \
--kind GlobalDocumentDB \
--locations regionName=<Region> \
--minimal-tls-version "Tls12"
New-AzCosmosDBAccount `
-ResourceGroupName "<YourResourceGroupName>" `
-Name "<YourCosmosDBAccountName>" `
-Location "<AzureRegion>" `
-Kind GlobalDocumentDB `
-EnableAutomaticFailover $true `
-MinimalTlsVersion "Tls12"
Überprüfen der Erzwingung der TLS-Mindestversion
Da Cosmos DB die TLS-Mindestversion auf Anwendungsebene erzwingt, sind herkömmliche TLS-Scanner, die überprüfen, ob Handshakes vom Dienst für eine bestimmte TLS-Version akzeptiert werden, zum Testen der Erzwingung in Cosmos DB unzuverlässig. Um die Durchsetzung zu überprüfen, verwenden Sie das offizielle Open-Source-Tool „cosmos-tls-scanner“.
Sie können den aktuellen Wert der minimalTlsVersion-Eigenschaft auch mithilfe der Azure CLI oder mit Azure PowerShell abrufen.
Abrufen des aktuellen Werts über die Azure CLI
Führen Sie den Befehl aus, um den aktuellen Wert der Eigenschaft mithilfe der Azure CLI abzurufen:
subId=$(az account show --query id -o tsv)
rg="myresourcegroup"
dbName="mycosmosdbaccount"
az rest --uri "/subscriptions/$subId/resourceGroups/$rg/providers/Microsoft.DocumentDB/databaseAccounts/$dbName?api-version=2022-11-15" --method GET
Abrufen des aktuellen Werts über Azure PowerShell
Führen Sie den Befehl aus, um den aktuellen Wert der Eigenschaft mithilfe von Azure PowerShell abzurufen:
Get-AzCosmosDBAccount -ResourceGroupName myresourcegroup -Name mycosmosdbaccount