Вопрос или проблема
https://azure.microsoft.com/en-us/updates/azure-support-tls-will-end-by-31-october-2024-2/
Поддержка Azure для TLS 1.0 и 1.1 заканчивается 31 октября 2024 года. Мне нужно обновить свойство MinimumTlsVersion
для каждого учетной записи хранения.
Хотя есть способы сделать это (pwsh
, Портал, ARM), мне было интересно, есть ли способ получить список всех хранилищ, использующих TLS < 1.2.
# Убедитесь, что вы вошли в Azure
# Connect-AzAccount
# Установите свой идентификатор подписки Azure
$subscriptionId = "ваш-id-подписки"
# Выберите подписку Azure
Select-AzSubscription -SubscriptionId $subscriptionId
# Получите все учетные записи хранения в подписке
$storageAccounts = Get-AzStorageAccount
# Инициализируйте пустой массив для хранения учетных записей хранения с TLS 1.0
$storagesUsingTls1_0 = @()
foreach ($storage in $storageAccounts) {
try {
# Попытайтесь получить свойства учетной записи хранения, включая минимальную версию TLS
$storageProps = Get-AzStorageAccount -ResourceGroupName $storage.ResourceGroupName -AccountName $storage.StorageAccountName
$tlsSetting = $storageProps.Encryption.MinimumTlsVersion
# Проверьте, если версия TLS 1.0
if ($tlsSetting -eq "TLS1_0") {
# Добавьте в список
$storagesUsingTls1_0 += $storage
}
} catch {
Write-Host "Ошибка при получении настроек TLS для учетной записи хранения: $($storage.StorageAccountName)"
}
}
# Вывод учетных записей хранения, использующих TLS 1.0
$storagesUsingTls1_0 | Format-Table StorageAccountName, ResourceGroupName, Location, @{Name="Версия TLS"; Expression={$_.Encryption.MinimumTlsVersion}}
Если ваш вопрос заключается только в том, чтобы увидеть все учетные записи хранения с версией TLS, отличной от 1.2, я бы посоветовал использовать Azure Resource Graph Explorer. Он доступен в портале Azure (просто найдите его) и позволяет вам запрашивать ваши ресурсы Azure. Запрос ниже покажет все ваши учетные записи хранения, не использующие версию TLS 1.2:
resources
| where type == "microsoft.storage/storageaccounts"
| where properties['minimumTlsVersion'] != "TLS1_2"
| project name, resourceGroup, properties.minimumTlsVersion
Есть ли какой-либо запрос графа ресурсов для приложения Functions и веб-приложений для проверки версии TLS?
Ответ или решение
Для решения задачи по получению списка учетных записей Azure Storage, использующих TLS версии ниже 1.2, вы можете использовать как PowerShell, так и Azure Resource Graph Explorer. Ниже приведены оба подхода.
1. Использование PowerShell
С помощью PowerShell можно выполнить следующие шаги, чтобы получить учетные записи, использующие TLS 1.0:
# Убедитесь, что вы вошли в Azure
# Connect-AzAccount
# Установите свой идентификатор подписки Azure
$subscriptionId = "ваш-идентификатор-подписки"
# Выберите подписку Azure
Select-AzSubscription -SubscriptionId $subscriptionId
# Получите все учетные записи хранения в подписке
$storageAccounts = Get-AzStorageAccount
# Инициализируйте пустой массив для хранения учетных записей с TLS 1.0
$storagesUsingTls1_0 = @()
foreach ($storage in $storageAccounts) {
try {
# Пытайтесь получить свойства учетной записи хранения, включая минимальную версию TLS
$storageProps = Get-AzStorageAccount -ResourceGroupName $storage.ResourceGroupName -AccountName $storage.StorageAccountName
$tlsSetting = $storageProps.Encryption.MinimumTlsVersion
# Проверьте, если версия TLS равна 1.0
if ($tlsSetting -eq "TLS1_0") {
# Добавьте в список
$storagesUsingTls1_0 += $storage
}
} catch {
Write-Host "Ошибка при получении настроек TLS для учетной записи хранилища: $($storage.StorageAccountName)"
}
}
# Вывод учетных записей хранилища, использующих TLS 1.0
$storagesUsingTls1_0 | Format-Table StorageAccountName, ResourceGroupName, Location, @{Name="TLS Version"; Expression={$_.Encryption.MinimumTlsVersion}}
2. Использование Azure Resource Graph Explorer
Если ваша задача состоит в том, чтобы увидеть все учетные записи хранилища не на версии TLS 1.2, вы можете использовать Azure Resource Graph Explorer в Портале Azure. Вот запрос, который вернет все учетные записи хранилища, которые не используют TLS 1.2:
resources
| where type == "microsoft.storage/storageaccounts"
| where properties['minimumTlsVersion'] != "TLS1_2"
| project name, resourceGroup, properties.minimumTlsVersion
Проверка версии TLS для Function App и Web Apps
Для проверки версии TLS у Function Apps и Web Apps вы можете использовать следующий запрос в Azure Resource Graph:
Для Function Apps:
resources
| where type == "microsoft.web/sites"
| where properties['minTlsVersion'] != "1.2"
| project name, resourceGroup, properties.minTlsVersion
Для Web Apps:
resources
| where type == "microsoft.web/sites"
| where properties.minimumTlsVersion != "1.2"
| project name, resourceGroup, properties.minimumTlsVersion
Эти запросы помогут вам идентифицировать приложения, которые также необходимо обновить до TLS версии 1.2.
Заключение
Важно готовиться к окончанию поддержки TLS 1.0 и 1.1 в Azure к 31 октября 2024 года. Убедитесь, что вы проверили и обновили все учетные записи хранилища, а также любые приложения (Function Apps и Web Apps), которые могут быть у вас в облаке.