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ę.
- Wymuszanie minimalnej wymaganej wersji protokołu Transport Layer Security (TLS) dla żądań do przestrzeni nazw usługi Service Bus
- Konfigurowanie minimalnej wersji protokołu TLS dla przestrzeni nazw usługi Service Bus
- Użyj Azure Policy do inspekcji pod kątem zgodności minimalnej wersji protokołu TLS dla przestrzeni nazw usługi Service Bus