Freigeben über


Konfigurieren von TLS (Transport Layer Security) für eine Service Bus-Clientanwendung

Aus Sicherheitsgründen ist es für einen Azure Service Bus-Namespace möglicherweise erforderlich, dass Clients eine Mindestversion von Transport Layer Security (TLS) zum Senden von Anforderungen verwenden. Aufrufe an Azure Service Bus schlagen fehl, wenn der Client eine TLS-Version verwendet, die niedriger als die erforderliche Mindestversion ist. Wenn für einen Namespace zum Beispiel TLS 1.2 erforderlich ist, schlägt eine Anforderung fehl, die von einem Client gesendet wird, der TLS 1.1 verwendet.

In diesem Artikel wird beschrieben, wie Sie eine Clientanwendung für die Verwendung einer bestimmten TLS-Version konfigurieren. Informationen zum Konfigurieren einer mindestens erforderlichen TLS-Version für einen Azure Service Bus-Namespace finden Sie unter Erzwingen einer mindestens erforderlichen Version von Transport Layer Security (TLS) für Anforderungen an einen Service Bus-Namespace.

Konfigurieren der TLS-Clientversion

Damit ein Client eine Anforderung mit einer bestimmten TLS-Version senden kann, muss das Betriebssystem diese Version unterstützen.

In den folgenden Beispielen wird gezeigt, wie die TLS-Version des Clients von .NET auf 1.2 festgelegt wird. Die vom Client verwendete .NET Framework-Instanz muss TLS 1.2 unterstützen. Weitere Informationen finden Sie unter Unterstützung für TLS 1.2.

Das folgende Beispiel zeigt, wie TLS 1.2 in einem .NET-Client unter Verwendung der Azure.Messaging.ServiceBus-Client-Bibliothek von Service Bus aktiviert wird:

{
    // 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")));
}

Überprüfen der von einem Client verwendeten TLS-Version

Wenn Sie überprüfen möchten, ob die angegebene TLS-Version vom Client verwendet wurde, um eine Anforderung zu senden, können Sie Fiddler oder ein ähnliches Tool verwenden. Öffnen Sie Fiddler, um den Netzwerkdatenverkehr auf dem Client zu erfassen, und führen Sie dann eines der Beispiele im vorherigen Abschnitt aus. Sehen Sie sich die Fiddler-Ablaufverfolgung an, um zu bestätigen, dass die richtige TLS-Version zum Senden der Anforderung verwendet wurde.

Nächste Schritte

Weitere Informationen finden Sie in der folgenden Dokumentation.