Konfigurowanie minimalnej wersji protokołu TLS w usłudze Azure SQL Managed Instance

Ustawienie Minimalna wersja protokołu Transport Layer Security (TLS) umożliwia klientom kontrolowanie wersji protokołu TLS używanej przez ich Azure SQL Managed Instance.

Obecnie obsługujemy protokół TLS w wersjach 1.0, 1.1 i 1.2. Ustawienie minimalnej wersji protokołu TLS zapewnia obsługę kolejnych, nowszych wersji protokołu TLS. Na przykład wybranie wersji TLS nowszej niż 1.1 oznacza, że akceptowane będą tylko połączenia nawiązywane za pomocą protokołu TLS 1.1 i 1.2, a protokół TLS 1.0 będzie odrzucany. Zalecamy ustawienie minimalnej wersji protokołu TLS na 1.2, ponieważ zawiera ona poprawki dla luk w zabezpieczeniach znalezionych w poprzednich wydaniach i jest najwyższą wersją protokołu TLS obsługiwaną w usłudze Azure SQL Managed Instance. Wcześniej należy jednak przeprowadzić testy potwierdzające zgodność aplikacji z tą wersją.

W przypadku klientów z aplikacjami, które opierają się na starszych wersjach protokołu TLS, zalecamy ustawienie minimalnej wersji protokołu TLS zgodnie z wymaganiami aplikacji. W przypadku klientów korzystających z aplikacji do łączenia się przy użyciu nieszyfrowanego połączenia, ustawienie minimalnej wersji protokołu TLS nie jest zalecane.

Aby uzyskać więcej informacji, zobacz Zagadnienia dotyczące protokołu TLS dotyczące łączności SQL Database.

Po ustawieniu minimalnej wersji protokołu TLS próby logowania klientów korzystających z wersji protokołu TLS niższej niż minimalna wersja protokołu TLS serwera zakończy się niepowodzeniem z powodu następującego błędu:

Error 47072
Login failed with invalid TLS version

Uwaga

Podczas konfigurowania minimalnej wersji protokołu TLS minimalna wersja jest wymuszana w warstwie aplikacji. Narzędzia, które próbują określić obsługę protokołu TLS w warstwie protokołu, mogą zwracać wersje protokołu TLS oprócz minimalnej wymaganej wersji po uruchomieniu bezpośrednio względem punktu końcowego wystąpienia zarządzanego.

Ustawianie minimalnej wersji protokołu TLS za pomocą programu PowerShell

Uwaga

W tym artykule użyto modułu Azure Az programu PowerShell, który jest zalecanym modułem programu PowerShell do interakcji z platformą Azure. Aby rozpocząć pracę z modułem Azure PowerShell, zobacz Instalowanie programu Azure PowerShell. Aby dowiedzieć się, jak przeprowadzić migrację do modułu Az PowerShell, zobacz Migracja programu Azure PowerShell z modułu AzureRM do modułu Az.

Ważne

Moduł Azure Resource Manager programu PowerShell jest nadal obsługiwany przez usługę Azure SQL Database, ale cały przyszły rozwój jest przeznaczony dla modułu Az.Sql. Aby uzyskać te polecenia cmdlet, zobacz AzureRM.Sql. Argumenty poleceń w module Az i modułach AzureRm są znacznie identyczne. Poniższy skrypt wymaga modułu Azure PowerShell.

Poniższy skrypt programu PowerShell pokazuje, jak i GetSetminimalna wersja protokołu TLS na poziomie wystąpienia:

#Get the Minimal TLS Version property
(Get-AzSqlInstance -Name sql-instance-name -ResourceGroupName resource-group).MinimalTlsVersion

# Update Minimal TLS Version Property
Set-AzSqlInstance -Name sql-instance-name -ResourceGroupName resource-group -MinimalTlsVersion "1.2"

Ustawianie minimalnej wersji protokołu TLS za pomocą interfejsu wiersza polecenia platformy Azure

Ważne

Wszystkie skrypty w tej sekcji wymagają interfejsu wiersza polecenia platformy Azure.

Interfejs wiersza polecenia platformy Azure w powłoce powłoki bash

Poniższy skrypt interfejsu wiersza polecenia pokazuje, jak zmienić ustawienie Minimalna wersja protokołu TLS w powłoce powłoki bash:

# Get current setting for Minimal TLS Version
az sql mi show -n sql-instance-name -g resource-group --query "minimalTlsVersion"

# Update setting for Minimal TLS Version
az sql mi update -n sql-instance-name -g resource-group --set minimalTlsVersion="1.2"