Protezione dei canali con TLS

Il protocollo TLS (Transport Layer Security) consente ai gestori code di comunicare in maniera sicura con altri gestori code o con i client.

Informazioni su questa attività

Concetti di TLS

Una connessione abilitata a TLS è sicura nei seguenti modi:

  • Autenticazione: ai gestori code o ai client che iniziano una connessione abilitata a TLS viene assicurata l'identità del gestore code a cui si stanno connettendo, mentre i gestori code che ricevono una connessione sono in grado di verificare l'identità del gestore code o client che inizia la connessione.
  • Riservatezza messaggi: utilizzando una chiave sessione diversa, se è configurato per farlo, TLS codifica tutte le informazioni scambiate durante la connessione. Ciò garantisce che le informazioni non possano essere visualizzate se intercettate da parti non autorizzate.
  • Integrità dei messaggi: i dati non possono essere modificati sulla connessione.
  • Catena dell'autorità di certificazione: ogni certificato nella catena dell'autorità di certificazione (CA) viene firmato dall'entità identificata dal rispettivo certificato principale nella catena. Alla testa della catena vi è il certificato CA root. Il certificato root è sempre firmato dalla stessa CA root. Le firme di tutti i certificati nella catena devono essere verificate.

Panoramica sulla sequenza

Esistono due stadi di sicurezza, come descritto nei seguenti passi.

PROCEDURE

  1. Quando un gestore code si connette a un altro gestore code, i due effettuano uno scambio di certificati TLS standard ed eseguono i controlli di convalida. Se la convalida viene eseguita correttamente, viene stabilita la connessione. Perché ciò avvenga, è necessario configurare entrambi i gestori code e i canali che verranno utilizzati, insieme alle impostazioni appropriate per i certificati.
  2. Quando i messaggi vengono inviati da un gestore code all'altro mediante un canale, i dati vengono generalmente crittografati mediante una chiave di sessione stabilita durante lo scambio di certificati. Affinché ciò sia possibile, è necessario configurare i canali che verranno utilizzati dall'utente con le specifiche CipherSpecs appropriate.

Risultati

Dettagli della sequenza

Di seguito è riportata una sequenza tipica per una connessione TLS semplice tra i gestori code QM1 e QM2:

  1. QM1 si connette a QM2.
  2. Il certificato personale utilizzato da QM2 viene inviato a QM1.
  3. QM1 autentica il certificato personale rispetto alla catena di certificati della CA.
  4. QM1 verifica facoltativamente la revoca dei certificati se OCSP (Online Certificate Status Protocol) è supportato sulla piattaforma server. Per ulteriori informazioni su OCSP vedi: Working with Online Certificate Status Protocol (OCSP).
  5. QM1 verifica facoltativamente il certificato personale rispetto all'elenco CRL (Certificate Revocation List). Per ulteriori informazioni consultare: Configurazione di TLS sui gestori delle code.
  6. QM1 applica un filtro in modo da accettare solo certificati personali che corrispondano a quelli dei nomi peer definiti. Per ulteriori informazioni consultare: Configurazione dei canali TLS.
  7. QM1 (se tutto è a posto) accetta il certificato personale di QM2.
  8. La connessione sicura a questo punto è stata stabilita.

Per una maggiore sicurezza, QM2 può decidere di richiedere un certificato a QM1; in tal caso, avranno luogo anche le fasi seguenti:

  1. QM1 invia il certificato personale assegnato a QM2.
  2. QM2 applica gli stessi controlli (passi 3, 4 e 5) mostrati in precedenza.
  3. QM2, se tutto è a posto, accetta il certificato personale di QM1.

La connessione sicura a questo punto è stata stabilita.

Per ulteriori informazioni, consultare Sicurezza IBM MQ in IBM Documentazione.