Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
PLATÍ PRO:
NoSQL
MongoDB
Cassandra
Skřítek
Stůl
Tento článek popisuje, jak vynutit minimální verzi protokolu TLS (Transport Layer Security) pro váš účet Cosmos DB pomocí samoobslužného rozhraní API.
Jak funguje minimální vynucování verzí protokolu TLS ve službě Azure Cosmos DB
Multitenantní povaha služby Cosmos DB vyžaduje, aby služba splňovala požadavky na přístup a zabezpečení každého uživatele. Aby toho bylo dosaženo, Služba Cosmos DB vynucuje minimální protokoly TLS v aplikační vrstvě, a ne v nižších vrstvách v zásobníku sítě, kde funguje protokol TLS. K tomuto vynucení dochází u všech ověřených požadavků na konkrétní databázový účet podle nastavení nastaveného zákazníkem.
Minimální přijatá verze pro celou službu je TLS 1.2. Tento výběr lze změnit na základě jednotlivých účtů, jak je popsáno v následující části.
Nastavení minimální verze protokolu TLS pro účet databáze Cosmos DB
Od verze 2022-11-15 rozhraní API poskytovatele prostředků Azure Cosmos DB se pro každý účet databáze Cosmos DB, který se nazývá minimalTlsVersion, zpřístupněna nová vlastnost . Přijímá následující hodnotu:
-
Tls12pro nastavení minimální verze na TLS 1.2
Výchozí hodnota pro nové účty je Tls12.
Důležité
Od 31. srpna 2025 musí všechny účty databáze Cosmos DB používat protokol TLS (Transport Layer Security) 1.2 nebo vyšší, protože podpora protokolu TLS 1.0 a 1.1 je vyřazena.
Od 31. března 2025 je pro Službu Azure Cosmos DB povolená podpora protokolu TLS 1.3 .
Nastavení minimálního protokolu TLS pomocí webu Azure Portal
Tato samoobslužná funkce je k dispozici na webu Azure Portal při vytváření a úpravách účtu. Účty Azure Cosmos DB vynucuje protokol TLS 1.2. Azure Cosmos DB ale podporuje také následující protokoly TLS v závislosti na vybraném typu rozhraní API.
- MongoDB: TLS 1.2
- Cassandra: TLS 1.2
- Tabulka, SQL a Graf: TLS 1.2
Postup nastavení minimálního protokolu TLS při vytváření účtu
Pokud používáte druh rozhraní API, který podporuje pouze protokol TLS 1.2, na kartě Sítě si všimnete, že protokol TLS je zakázaný.
Pokud používáte druh rozhraní API, který přijímá více protokolů TLS, můžete přejít na kartu Sítě a je k dispozici možnost Minimum Transport Layer Security Protocol . Vybraný protokol můžete změnit tak, že kliknete na rozevírací seznam a vyberete požadovaný protokol.
Po nastavení účtu si můžete projít kartu Zkontrolovat a vytvořit v části Sítě, že vybraný protokol TLS je nastavený podle vámi zadaného nastavení.
Postup nastavení minimálního protokolu TLS při úpravě účtu
Na webu Azure Portal přejděte ke svému účtu služby Azure Cosmos DB.
V nabídce bočního panelu vyberte Sítě a pak vyberte kartu Připojení .
Najdete možnost Minimální protokol TLS (Transport Layer Security Protocol ). Pokud používáte druh rozhraní API, který podporuje jenom protokol TLS 1.2, všimnete si, že tato možnost je zakázaná. V opačném případě můžete požadovaný protokol TLS vybrat tak, že na něj kliknete.
Po změně protokolu TLS vyberte Uložit .
Po uložení obdržíte oznámení o úspěchu. Tato změna může trvat až 15 minut, než se projeví po dokončení aktualizace konfigurace.
Nastavení přes Azure CLI
K nastavení pomocí Azure CLI použijte příkaz:
rg="myresourcegroup"
dbName="mycosmosdbaccount"
minimalTlsVersion="Tls12"
az cosmosdb update -n $dbName -g $rg --minimal-tls-version $minimalTlsVersion
Nastavení přes Azure PowerShell
K nastavení pomocí Azure PowerShellu použijte příkaz:
$minimalTlsVersion = "Tls12"
Update-AzCosmosDBAccount -ResourceGroupName myresourcegroup -Name mycosmosdbaccount -MinimalTlsVersion $minimalTlsVersion
Nastavení prostřednictvím šablony ARM
Pokud chcete tuto vlastnost nastavit pomocí šablony ARM, aktualizujte stávající šablonu nebo vyexportujte novou šablonu pro aktuální nasazení a pak přidejte "minimalTlsVersion" do vlastností prostředků databaseAccounts požadovanou minimální hodnotu verze protokolu TLS. Následující příklad ukazuje základní šablonu Azure Resource Manageru s tímto nastavením vlastnosti pomocí parametru.
{
{
"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')]",
}
}
}
Důležité
Při opětovném nasazení s touto vlastností nezapomeňte zahrnout další atributy vašeho účtu a podřízených prostředků. Tuto šablonu nenasazujte tak, jak je, nebo resetuje všechny vlastnosti vašeho účtu.
Pro nové účty
Účty se minimalTlsVersion sadou vlastností můžete vytvářet pomocí předchozí šablony ARM nebo pomocí Azure CLI nebo Azure PowerShellu:
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"
Jak ověřit vynucení minimální verze protokolu TLS
Vzhledem k tomu, že Cosmos DB vynucuje minimální verzi protokolu TLS na aplikační vrstvě, konvenční skenery TLS, které kontrolují, zda služba přijme handshake pro konkrétní verzi protokolu TLS, nejsou spolehlivé pro testování vynucení v Cosmos DB. K ověření vynucování využijte oficiální open-source nástroj cosmos-tls-scanner.
Aktuální hodnotu minimalTlsVersion vlastnosti můžete získat také pomocí Azure CLI nebo Azure PowerShellu.
Získání aktuální hodnoty prostřednictvím Azure CLI
Pokud chcete získat aktuální hodnotu vlastnosti pomocí Azure CLI, spusťte příkaz:
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
Získání aktuální hodnoty přes Azure PowerShell
Pokud chcete získat aktuální hodnotu vlastnosti pomocí Azure PowerShellu, spusťte příkaz:
Get-AzCosmosDBAccount -ResourceGroupName myresourcegroup -Name mycosmosdbaccount