Skip to content

Commit a9393db

Browse files
authored
Update iot-hub-tls-support.md
1 parent a9b1186 commit a9393db

File tree

1 file changed

+9
-8
lines changed

1 file changed

+9
-8
lines changed

articles/iot-hub/iot-hub-tls-support.md

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
author: kgremban
66
ms.service: iot-hub
77
ms.topic: conceptual
8-
ms.date: 01/05/2024
8+
ms.date: 11/15/2024
99
ms.author: kgremban
1010
---
1111

@@ -22,29 +22,30 @@ IoT Hub uses Transport Layer Security (TLS) to secure connections from IoT devic
2222
2323
## Mutual TLS support
2424

25-
Mutual TLS authentication ensures that the client _authenticates_ the server (IoT Hub) certificate and the server (IoT Hub) _authenticates_ the [X.509 client certificate or X.509 thumbprint](tutorial-x509-test-certs.md#create-a-client-certificate-for-a-device). _Authorization_ is performed by IoT Hub after _authentication_ is complete.
25+
Mutual TLS authentication ensures that the client _authenticates_ the server (IoT Hub) certificate and the server (IoT Hub) _authenticates_ the client using [X.509 client certificate or X.509 thumbprint](tutorial-x509-test-certs.md#create-a-client-certificate-for-a-device). IoT Hub performs _authorization_ after _authentication_ is complete.
2626

27-
For AMQP and MQTT protocols, IoT Hub requests a client certificate in the initial TLS handshake. If one is provided, IoT Hub _authenticates_ the client certificate and the client _authenticates_ the IoT Hub certificate. This process is called mutual TLS authentication. When IoT Hub receives an MQTT connect packet or an AMQP link opens, IoT Hub performs _authorization_ for the requesting client and determines if the client requires X.509 authentication. If mutual TLS authentication was completed and the client is authorized to connect as the device, it is allowed. However, if the client requires X.509 authentication and client authentication was not completed during the TLS handshake, then IoT Hub rejects the connection.
27+
For Advanced Message Queuing Protocol (AMQP) and Message Queuing Telemetry Transport (MQTT) protocols, IoT Hub requests a client certificate in the initial TLS handshake. If one is provided, IoT Hub _authenticates_ the client certificate, and the client _authenticates_ the IoT Hub certificate. This process is called mutual TLS authentication. When IoT Hub receives an MQTT connect packet or an AMQP link opens, IoT Hub performs _authorization_ for the requesting client and determines if the client requires X.509 authentication. If mutual TLS authentication was completed and the client is authorized to connect as the device, it is allowed. However, if the client requires X.509 authentication and client authentication was not completed during the TLS handshake, then IoT Hub rejects the connection.
2828

2929
For HTTP protocol, when the client makes its first request, IoT Hub checks if the client requires X.509 authentication and if client authentication was complete then IoT Hub performs authorization. If client authentication was not complete, then IoT Hub rejects the connection
3030

31-
After a successful TLS handshake, IoT Hub can authenticate a device using a symmetric key or an X.509 certificate. For certificate-based authentication, this can be any X.509 certificate, including ECC. IoT Hub validates the certificate against the thumbprint or certificate authority (CA) you provide. To learn more, see [Supported X.509 certificates](iot-hub-dev-guide-sas.md#supported-x509-certificates).
31+
After a successful TLS handshake, IoT Hub can authenticate a device using a symmetric key or an X.509 certificate. For certificate-based authentication, IoT Hub validates the certificate against the thumbprint or certificate authority (CA) you provide. To learn more, see [Supported X.509 certificates](iot-hub-dev-guide-sas.md#supported-x509-certificates).
3232

3333
### IoT Hub's server TLS certificate
3434

3535
During a TLS handshake, IoT Hub presents RSA-keyed server certificates to connecting clients.In the past, the certificates were all rooted from the Baltimore Cybertrust Root CA. Because the Baltimore root is at end-of-life, we are in the process of migrating to a new root called DigiCert Global G2. This migration impacts all devices currently connecting to IoT Hub. For more information, see [IoT TLS certificate update](https://aka.ms/iot-ca-updates).
3636

37-
Although root CA migrations are rare, for resilience in the modern security landscape you should prepare your IoT scenario for the unlikely event that a root CA is compromised or an emergency root CA migration is necessary. We strongly recommend that all devices trust the following three root CAs:
37+
We strongly recommend that all devices trust the following three root CAs:
3838

3939
* Baltimore CyberTrust root CA
4040
* DigiCert Global G2 root CA
4141
* Microsoft RSA root CA 2017
4242

4343
For links to download these certificates, see [Azure Certificate Authority details](../security/fundamentals/azure-CA-details.md).
4444

45-
## Cipher suites supported by IoT Hub
45+
Root CA migrations are extremely rare, you should always prepare your IoT solution for the unlikely event that a root CA is compromised and an emergency root CA migration is necessary.
4646

47-
To comply with Azure security policy for a secure connection, these are the cipher suites that IoT Hub will support in on-going basis:
47+
## Cipher suites supported by IoT Hub
48+
To comply with Azure security policy for a secure connection, IoT Hub supports the following cipher suites:
4849

4950
| Cipher Suites | TLS Version |
5051
|-------------------------------------------|------------------------------|
@@ -57,7 +58,7 @@ To comply with Azure security policy for a secure connection, these are the ciph
5758
| `TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256` | ECC-only Cipher Suite |
5859
| `TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384` | ECC-only Cipher Suite |
5960

60-
The following cipher suites are currently supported by IoT Hub, however IoT Hub will end support for these cipher suites in accordance with the Azure TLS end of support.
61+
The following cipher suites are weak and no longer recommended, and these cipher suites will be retired in accordance with the Azure TLS end of support.
6162

6263
| Cipher Suites | TLS Version |
6364
|---------------------------------------|------------------------------------|

0 commit comments

Comments
 (0)