Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
ОТНОСИТСЯ К:
NoSQL
MongoDB
Кассандра
Гремлин
Таблица
В этой статье описывается, как применить минимальную версию протокола TLS для учетной записи Cosmos DB с помощью API самообслуживания.
Как работает применение минимальной версии TLS в Azure Cosmos DB
Мультитенантный характер Cosmos DB требует, чтобы служба соответствовала потребностям доступа и безопасности каждого пользователя. Для этого Cosmos DB применяет минимальные протоколы TLS на уровне приложения, а не на более низких уровнях в сетевом стеке, где работает TLS. Это исполнение происходит на любых аутентифицированных запросах к определенной учетной записи базы данных в соответствии с настройками, установленными на этой учетной записи клиентом.
Минимальная версия, принимаемая во всех службах, — TLS 1.2. Этот выбор можно изменить на основе учетной записи, как описано в следующем разделе.
Как установить минимальную версию TLS для моего аккаунта базы данных Cosmos DB
Начиная с версии 2022-11-15 API поставщика ресурсов Azure Cosmos DB, для каждой учетной записи базы данных Cosmos DB предоставляется minimalTlsVersionновое свойство. Она принимает следующее значение:
-
Tls12для установки минимальной версии TLS 1.2
Значением по умолчанию для новых учетных записей является Tls12.
Важно
Начиная с 31 августа 2025 г. все учетные записи базы данных Cosmos DB должны использовать tls 1.2 или более поздней версии, так как поддержка TLS 1.0 и 1.1 прекращена.
С 31 марта 2025 г. поддержка TLS 1.3 включена для Azure Cosmos DB.
Настройка минимального протокола TLS с помощью портала Azure
Эта функция самообслуживания доступна на портале Azure при создании и редактировании учетной записи. Учетные записи Azure Cosmos DB применяют протокол TLS 1.2. Однако Azure Cosmos DB также поддерживает следующие протоколы TLS в зависимости от выбранного типа API.
- MongoDB: TLS 1.2
- Кассандра: TLS 1.2
- Таблица, SQL и Граф: TLS 1.2
Действия по настройке минимального протокола TLS при создании учетной записи
Если вы используете тип API, поддерживающий только TLS 1.2, вы заметите на вкладке "Сеть" , что протокол TLS отключен.
Если вы используете тип API, принимающий несколько протоколов TLS, можно перейти на вкладку "Сеть" , а также доступен параметр "Минимальный протокол безопасности транспортного уровня ". Вы можете изменить выбранный протокол, просто щелкнув по выпадающему списку и выбрав нужный протокол.
После настройки учетной записи можно просмотреть на вкладке "Рецензирование и создание " в разделе "Сеть", где задан выбранный протокол TLS.
Действия по настройке минимального протокола TLS при редактировании учетной записи
Перейдите к своей учетной записи Azure Cosmos DB на портале Azure.
Выберите "Сеть " в боковом меню, а затем перейдите на вкладку "Подключение ".
Вы найдете параметр "Минимальный протокол безопасности транспортного уровня ". Если вы используете тип API, который поддерживает только TLS 1.2, вы заметите, что эта опция отключена. В противном случае можно выбрать нужный протокол TLS, просто щелкнув его.
Нажмите кнопку "Сохранить", когда вы изменили протокол TLS.
После сохранения вы получите уведомление об успешном выполнении. Тем не менее изменение может занять до 15 минут, чтобы вступить в силу после завершения обновления конфигурации.
Установить с помощью Azure CLI
Чтобы настроить с помощью Azure CLI, используйте команду:
rg="myresourcegroup"
dbName="mycosmosdbaccount"
minimalTlsVersion="Tls12"
az cosmosdb update -n $dbName -g $rg --minimal-tls-version $minimalTlsVersion
Настройка через Azure PowerShell
Чтобы настроить с помощью Azure PowerShell, используйте команду:
$minimalTlsVersion = "Tls12"
Update-AzCosmosDBAccount -ResourceGroupName myresourcegroup -Name mycosmosdbaccount -MinimalTlsVersion $minimalTlsVersion
Установлено через шаблон ARM
Чтобы задать это свойство с помощью ARM-шаблона, обновите ваш существующий шаблон или экспортируйте новый шаблон для текущего развертывания, затем добавьте "minimalTlsVersion" в свойства ресурсов databaseAccounts с необходимым значением минимальной версии TLS. В следующем примере показан базовый шаблон Azure Resource Manager с этим параметром свойства с помощью параметра.
{
{
"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')]",
}
}
}
Важно
Убедитесь, что включили другие свойства для вашей учетной записи и дочерних ресурсов при повторном развертывании с этим свойством. Не развертывайте этот шаблон как есть или сбрасывайте все свойства учетной записи.
Для новых аккаунтов
Учетные записи с minimalTlsVersion набором свойств можно создать с помощью предыдущего шаблона ARM или с помощью Azure CLI или Azure PowerShell:
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"
Как проверить применение минимальной версии TLS
Поскольку Cosmos DB применяет минимальную версию TLS на уровне приложения, обычные сканеры TLS, которые проверяют, принимаются ли рукопожатия службой для конкретной версии TLS, ненадежны для тестирования применения в Cosmos DB. Чтобы проверить применение, обратитесь к официальному средству проверки cosmos-tls-сканера с открытым исходным кодом.
Вы также можете получить текущее значение свойства minimalTlsVersion, используя Azure CLI или Azure PowerShell.
Получите текущее значение с помощью Azure CLI
Чтобы получить текущее значение свойства с помощью Azure CLI, выполните следующую команду:
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
Получите текущее значение с помощью Azure PowerShell
Чтобы получить текущее значение свойства с помощью Azure PowerShell, выполните команду:
Get-AzCosmosDBAccount -ResourceGroupName myresourcegroup -Name mycosmosdbaccount