Questa pagina spiega come configurare TLS 1.3 nei processori di messaggi Apigee per il traffico diretto a sud (traffico tra il processore di messaggi e il server di backend).
Per ulteriori informazioni sulla funzionalità TLS 1.3 in Java, vedi Note di rilascio dell'aggiornamento JDK 8u261.
La procedura per attivare TLS 1.3 dipende dalla versione di Java in uso. Consulta Verifica la versione di Java in un processore di messaggi di seguito per trovare la versione di Java installata nel processore di messaggi.
TLS v1.3 e versioni Java
La funzionalità TLS 1.3 è stata introdotta nelle seguenti versioni di Java:
- Oracle JDK 8u261
- OpenJDK 8u272
Nelle seguenti versioni di Java, la funzionalità TLS v1.3 esiste, ma non è abilitata per impostazione predefinita nei ruoli di cliente:
- Oracle JDK 8u261 o versione successiva, ma inferiore a Oracle JDK 8u341
- OpenJDK 8u272 o versione successiva, ma inferiore a OpenJDK 8u352
Se utilizzi una di queste versioni, devi abilitare TLS v1.3, come descritto in Come attivare TLS v1.3 se non è abilitato per impostazione predefinita.
Se utilizzi una delle versioni seguenti, TLS v1.3 dovrebbe essere già abilitato per impostazione predefinita nei ruoli client (il processore di messaggi agisce come un per le connessioni TLS in direzione sud), quindi non è richiesta alcuna azione da parte tua:
- Oracle JDK 8u341 o versione successiva
- OpenJDK 8u352 o versioni successive
Affinché TLS v1.3 funzioni, devono essere soddisfatte tutte le seguenti condizioni:
- Il Java sottostante sul processore di messaggi deve supportare TLS v1.3.
- TLS v1.3 deve essere abilitato in Java sul processore di messaggi.
- TLS v1.3 deve essere abilitato nell'applicazione Processore di messaggi.
Come abilitare TLS v1.3 in Java se non è abilitato per impostazione predefinita.
Questa sezione spiega come abilitare TLS v1.3 nel caso in cui utilizzi uno dei seguenti di Java:
- Oracle JDK 8u261 o versione successiva, ma inferiore a Oracle JDK 8u341
- OpenJDK 8u272 o versione successiva, ma inferiore a OpenJDK 8u352
Nel processore di messaggi, imposta la proprietà Java jdk.tls.client.protocols
.
I valori sono separati da virgole e possono contenere uno o più di
TLSv1
, TLSv1.1
, TLSv1.2
, TLSv1.3
e
SSLv3
.
Ad esempio, l'impostazione di -Djdk.tls.client.protocols=TLSv1.2,TLSv1.3
abilita il client
i protocolli TLSv1.2
e TLSv1.3
.
Vedi Cambiare altro dalle proprietà JVM a scopri come impostare le proprietà JVM in un componente Edge.
Per abilitare i protocolli TLS v1, v1.1, v1.2 e v1.3:
- Imposta la seguente configurazione in
il file di configurazione del processore di messaggi
(
/opt/apigee/customer/application/message-processor.properties
):bin_setenv_ext_jvm_opts=-Djdk.tls.client.protocols=TLSv1,TLSv1.1,TLSv1.2,TLSv1.3
- Riavvia il processore di messaggi.
Come disabilitare TLS v1.3 quando è abilitato per impostazione predefinita
Se utilizzi Oracle JDK 8u341 o versione successiva oppure OpenJDK 8u352 o versione successiva, TLSv1.3 è abilitato predefinito per i clienti. Se desideri disabilitare TLS v1.3 in questi casi, hai due opzioni:
- Configura le informazioni SSL del server di destinazione e assicurati che TLSv1.3 non sia menzionato nel di protocolli. Consulta Elementi di configurazione di TargetEndpoint TLS/SSL. Nota:se nella configurazione del server di destinazione non è specificato alcun protocollo, qualsiasi I protocolli supportati da Java verranno inviati come opzioni nell'handshake del client.
- Disattiva TLS v1.3 nel processore di messaggi disabilitando completamente il protocollo. Consulta Imposta il protocollo TLS sul processore di messaggi.
Verifica la versione di Java in un processore di messaggi
Per verificare la versione Java installata in un processore di messaggi, accedi al processore di messaggi nodo ed esegui questo comando:
java -version
L'output di esempio seguente mostra che è installato OpenJDK 8u312.
$ java -version openjdk version "1.8.0_312" OpenJDK Runtime Environment (build 1.8.0_312-b07) OpenJDK 64-Bit Server VM (build 25.312-b07, mixed mode)
Crittografia supportate
Attualmente, Java 8 supporta 2 crittografie TLS v1.3:
- TLS_AES_256_GCM_SHA384
- TLS_AES_128_GCM_SHA256
Puoi utilizzare openssl
per verificare se il server di destinazione supporta TLS v1.3 e almeno uno dei
crittografie sovrapposte utilizzando il di seguito. Tieni presente che questo esempio utilizza l'utilità openssl11
, che ha
TLS v1.3 abilitato.
$ openssl11 s_client -ciphersuites "TLS_AES_256_GCM_SHA384:TLS_AES_128_GCM_SHA256" -connect target_host:target_port -tls1_3