-For AMQP and MQTT protocols, the server requests a client certificate in the initial TLS handshake. If one is provided, then the server _authenticates_ the client certificate and the client _authenticates_ the server 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 mutual TLS authentication was not completed during the initial handshake, then IoT Hub initiates a new TLS handshake requiring client authentication. Once the mutual TLS authentication is complete, IoT Hub performs _authorization_ again with the now _authenticated_ client.
0 commit comments