Connessione TLS (Transport Layer Security) con il broker MQTT
Per stabilire una connessione sicura con il broker MQTT, è possibile usare MQTTS sulla porta 8883 o MQTT su Web Socket sulla porta 443. È importante notare che sono supportate solo le connessioni sicure. I passaggi seguenti consentono di stabilire una connessione sicura prima dell'autenticazione dei client.
Flusso generale del modo in cui viene stabilita la connessione mTLS (Mutual Transport Layer Security)
- Il client avvia l'handshake con il broker MQTT. Invia un pacchetto hello con versione TLS supportata, suite di crittografia.
- Il servizio presenta il certificato al client.
- Il servizio presenta un certificato P-384 EC o un certificato RSA 2048 a seconda delle crittografie nel pacchetto hello client.
- Certificati di servizio firmati da un'autorità di certificazione pubblica.
- Il client verifica che sia connesso al servizio corretto e attendibile.
- Il client presenta quindi il proprio certificato per dimostrare la sua autenticità.
- Attualmente è supportata solo l'autenticazione basata su certificati, quindi i client devono inviare il certificato.
- Il servizio completa correttamente l'handshake TLS dopo la convalida del certificato.
- Dopo aver completato l'handshake TLS e la connessione mTLS, il client invia il pacchetto MQTT CONNECT al servizio.
- Il servizio autentica il client e consente la connessione.
- Lo stesso certificato client usato per stabilire mTLS viene usato per autenticare la connessione client al servizio.
Passaggi successivi
- Informazioni su come autenticare i client usando la catena di certificati
- Informazioni su come autenticare il client usando il token ID Microsoft Entra