Konfigurowanie protokołu Transport Layer Security (TLS) dla aplikacji klienckiej usługi Service Bus

Ze względów bezpieczeństwa przestrzeń nazw Azure Service Bus może wymagać od klientów minimalnej wersji protokołu Transport Layer Security (TLS) do wysyłania żądań. Wywołania Azure Service Bus zakończy się niepowodzeniem, jeśli klient korzysta z wersji protokołu TLS niższej niż minimalna wymagana wersja. Jeśli na przykład przestrzeń nazw wymaga protokołu TLS 1.2, żądanie wysłane przez klienta korzystającego z protokołu TLS 1.1 zakończy się niepowodzeniem.

W tym artykule opisano sposób konfigurowania aplikacji klienckiej do używania określonej wersji protokołu TLS. Aby uzyskać informacje na temat konfigurowania minimalnej wymaganej wersji protokołu TLS dla przestrzeni nazw Azure Service Bus, zobacz Wymuszanie minimalnej wymaganej wersji protokołu Transport Layer Security (TLS) dla żądań do przestrzeni nazw usługi Service Bus.

Konfigurowanie wersji protokołu TLS klienta

Aby klient wysyłał żądanie z określoną wersją protokołu TLS, system operacyjny musi obsługiwać daną wersję.

W poniższym przykładzie pokazano, jak ustawić wersję protokołu TLS klienta na 1.2 z platformy .NET. .NET Framework używany przez klienta musi obsługiwać protokół TLS 1.2. Aby uzyskać więcej informacji, zobacz Obsługa protokołu TLS 1.2.

Poniższy przykład pokazuje, jak włączyć protokół TLS 1.2 w kliencie platformy .NET przy użyciu biblioteki klienta Azure.Messaging.ServiceBus usługi Service Bus:

{
    // Enable TLS 1.2 before connecting to Service Bus
    System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12;
    
    // Connection string to your Service Bus namespace
    string connectionString = "<NAMESPACE CONNECTION STRING>";
    
    // Name of your Service Bus queue
    string queueName = "<QUEUE NAME>";

    // The client that owns the connection and can be used to create senders and receivers
    static ServiceBusClient client = new ServiceBusClient(connectionString);
    
    // The sender used to publish messages to the queue
    ServiceBusSender sender = client.CreateSender(queueName);
    
    // Use the producer client to send a message to the Service Bus queue
    await sender.SendMessagesAsync(new ServiceBusMessage($"Message for TLS check")));
}

Weryfikowanie wersji protokołu TLS używanej przez klienta

Aby sprawdzić, czy określona wersja protokołu TLS została użyta przez klienta do wysłania żądania, możesz użyć programu Fiddler lub podobnego narzędzia. Otwórz program Fiddler, aby rozpocząć przechwytywanie ruchu sieciowego klienta, a następnie wykonaj jeden z przykładów w poprzedniej sekcji. Przyjrzyj się śladowi programu Fiddler, aby potwierdzić, że do wysłania żądania użyto poprawnej wersji protokołu TLS.

Następne kroki

Aby uzyskać więcej informacji, zobacz następującą dokumentację.