A TLS minimális verziójának önkiszolgáló érvényesítése az Azure Cosmos DB-ben
A KÖVETKEZŐKRE VONATKOZIK:
NoSQL
MongoDB
Cassandra
Gremlin
Asztal
Ez a cikk azt ismerteti, hogyan kényszerítheti ki a TLS protokoll minimális verzióját a Cosmos DB-fiókhoz egy önkiszolgáló API használatával.
A minimális TLS-verzióérvényesítés működése az Azure Cosmos DB-ben
A Cosmos DB több-bérlős jellege miatt a szolgáltatás minden felhasználó hozzáférési és biztonsági igényeinek kielégítéséhez szükséges. Ennek érdekében a Cosmos DB minimális TLS-protokollokat kényszerít ki az alkalmazásrétegen, és nem alacsonyabb rétegeket abban a hálózati veremben, ahol a TLS működik. Ez a kényszerítés egy adott adatbázisfiókra irányuló hitelesített kérés esetén történik az ügyfél által az adott fiókon beállított beállításoknak megfelelően.
A minimális szolgáltatásszintű elfogadott verzió a TLS 1.0. Ez a kijelölés fiókonként módosítható a következő szakaszban ismertetett módon.
A Cosmos DB-adatbázisfiók minimális TLS-verziójának beállítása
Az Azure Cosmos DB Erőforrás-szolgáltató API 2022-11-15 API-verziójától kezdve minden Cosmos DB-adatbázisfiókhoz egy új tulajdonság jelenik meg.minimalTlsVersion
A következő értékek egyikét fogadja el:
-
Tls
a minimális verzió TLS 1.0-ra való beállításához. -
Tls11
a minimális verzió TLS 1.1-es verziójára való beállításához. -
Tls12
a minimális verzió TLS 1.2-es verziójára való beállításához.
Az új fiókok alapértelmezett értéke a .Tls12
Fontos
2025. augusztus 31-től minden Cosmos DB-adatbázisfióknak a Transport Layer Security (TLS) 1.2-es vagy újabb verzióját kell használnia, mivel a TLS 1.0 és 1.1 támogatása megszűnik.
Minimális TLS-protokoll beállítása az Azure Cosmos DB-ben a Portál használatával
Ez az önkiszolgáló funkció a portálon érhető el fiók létrehozásakor és szerkesztésekor. Az Azure Cosmos DB-fiókok kényszerítik a TLS 1.2 protokollt. Az Azure Cosmos DB azonban a kiválasztott API-típustól függően az alábbi TLS-protokollokat is támogatja.
MongoDB: TLS 1.2
Cassandra: TLS 1.2
Table, SQL and Graph: TLS 1.0, TLS 1.1 és TLS 1.2
A minimális TLS-protokoll beállításának lépései fiók létrehozásakor
Ha olyan API-típust használ, amely csak a TLS 1.2-t támogatja, a hálózatkezelés lap alján a TLS protokoll le van tiltva.
Ha olyan API-típust használ, amely több TLS protokollt is elfogad, lépjen a Hálózatkezelés lapra, és elérhető a Minimális átviteli réteg biztonsági protokoll lehetőség. A kijelölt protokoll módosításához kattintson a legördülő listára, és válassza ki a kívánt protokollt.
A fiók beállítása után a Véleményezés + létrehozás lapon, a Hálózatkezelés szakasz alján áttekintheti, hogy a kiválasztott TLS-protokoll a megadott módon van-e beállítva.
A minimális TLS-protokoll beállításának lépései a fiók szerkesztésekor
Lépjen az Azure Cosmos DB-fiókjához az Azure Portalon.
Válassza a Bal oldali menü Hálózatkezelés elemét, majd a Kapcsolatok lapot.
Megtalálja a Minimális átviteli réteg biztonsági protokoll beállítását. Ha olyan API-típust használ, amely csak a TLS 1.2-t támogatja, ez a beállítás le lesz tiltva. Ellenkező esetben egyszerűen rákattintva kiválaszthatja a kívánt TLS-protokollt.
- Kattintson a Mentés gombra, miután módosította a TLS protokollt.
- A mentés után egy sikeres értesítést fog kapni. A módosítás a konfigurációs frissítés befejezése után akár 15 percet is igénybe vehet.
Beállítás az Azure CLI-vel
Az Azure CLI használatához használja a következő parancsot:
rg="myresourcegroup"
dbName="mycosmosdbaccount"
minimalTlsVersion="Tls12"
az cosmosdb update -n $dbName -g $rg --minimal-tls-version $minimalTlsVersion
Beállítás az Azure PowerShell használatával
Az Azure PowerShell használatának beállításához használja a következő parancsot:
$minimalTlsVersion = "Tls12"
Update-AzCosmosDBAccount -ResourceGroupName myresourcegroup -Name mycosmosdbaccount -MinimalTlsVersion $minimalTlsVersion
Beállítás ARM-sablonnal
Ha arm-sablonnal szeretné beállítani ezt a tulajdonságot, frissítse a meglévő sablont, vagy exportáljon egy új sablont az aktuális üzembe helyezéshez, majd adja hozzá "minimalTlsVersion"
az databaseAccounts
erőforrások tulajdonságait a kívánt minimális TLS-verzióértékkel. Az alábbiakban egy alapszintű példát talál egy Azure Resource Manager-sablonra ezzel a tulajdonságbeállítással, egy paraméter használatával.
{
{
"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')]",
}
}
}
Fontos
A tulajdonság ismételt üzembe helyezésekor győződjön meg arról, hogy a fiók és a gyermekerőforrások egyéb tulajdonságait is tartalmazza. Ne telepítse a sablont úgy, ahogy van, vagy visszaállítja az összes fióktulajdonságát.
Új fiókok esetén
Létrehozhat fiókokat a minimalTlsVersion
fenti ARM-sablonnal beállított tulajdonsággal, vagy az Azure PowerShell használatával futtathatja a következő parancsot:
az cosmosdb create --name <CosmosDBAccountName> \
--resource-group <ResourceGroupName> \
--kind GlobalDocumentDB \
--locations regionName=<Region> \
--minimal-tls-version "Tls12"
Fontos
Ha a fiók létezik, és a minimalTlsVersion
tulajdonság nincs megadva, a tulajdonság a 2022-11-15 API-verziótól kezdve alaphelyzetbe áll az alapértelmezett értékre.
A TLS-verziók minimális érvényesítésének ellenőrzése
Mivel a Cosmos DB kikényszeríti a minimális TLS-verziót az alkalmazásrétegen, a hagyományos TLS-szkennerek, amelyek ellenőrzik, hogy a szolgáltatás elfogadja-e a kézfogásokat egy adott TLS-verzióhoz, megbízhatatlanok a Cosmos DB-ben való kényszerítés teszteléséhez. A kényszerítés ellenőrzéséhez tekintse meg a hivatalos nyílt forráskódú cosmos-tls-scanner eszközt.
A tulajdonság aktuális értékét az Azure CLI vagy az minimalTlsVersion
Azure PowerShell használatával is lekérheti.
Aktuális érték lekérése az Azure CLI-vel
A tulajdonság aktuális értékének az Azure CLI használatával történő lekéréséhez futtassa a következő parancsot:
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
Aktuális érték lekérése az Azure PowerShell használatával
A tulajdonság aktuális értékének az Azure PowerShell használatával történő lekéréséhez futtassa a következő parancsot:
Get-AzCosmosDBAccount -ResourceGroupName myresourcegroup -Name mycosmosdbaccount