Configurer TLS 1.3 pour le trafic en direction du sud

Cette page explique comment configurer TLS 1.3 dans les processeurs de messages Apigee pour le trafic "Direction sud" (trafic entre le processeur de messages et le serveur backend).

Pour en savoir plus sur la fonctionnalité TLS 1.3 en Java, consultez Notes de version de la mise à jour de JDK 8u261

La procédure d'activation de TLS 1.3 dépend de la version de Java que vous utilisez. Voir <ph type="x-smartling-placeholder"></ph> Vérifiez la version de Java dans un processeur de messages ci-dessous pour connaître la version de Java installée. dans le processeur de messages.

TLS v1.3 et versions Java

La fonctionnalité TLS 1.3 a été introduite dans les versions suivantes de Java:

  • Oracle JDK 8u261
  • OpenJDK 8u272

Dans les versions Java suivantes, la fonctionnalité TLS v1.3 existe, mais n'est pas activée par défaut. dans des rôles de client:

  • JDK Oracle 8u261 ou version ultérieure, mais inférieur au JDK Oracle 8u341
  • OpenJDK 8u272 ou version ultérieure, mais inférieur à OpenJDK 8u352

Si vous utilisez l'une de ces versions, vous devez activer TLS v1.3, comme décrit ci-dessous. dans Comment activer TLS v1.3 lorsqu'il n'est pas activé par défaut.

Si vous utilisez l'une des versions suivantes, TLS v1.3 devrait déjà être activé par défaut. dans des rôles client (le processeur de messages agit comme un client pour les connexions TLS "South" (Sud), aucune action n'est requise de votre part:

  • Oracle JDK 8u341 ou version ultérieure
  • OpenJDK 8u352 ou version ultérieure

Pour que TLS v1.3 fonctionne, toutes les conditions suivantes doivent être remplies:

  • Java sous-jacent sur le processeur de messages doit prendre en charge TLS v1.3.
  • TLS v1.3 doit être activé en Java sur le processeur de messages.
  • TLS v1.3 doit être activé dans l'application Processeur de messages.

Comment activer TLS v1.3 en Java lorsqu'il n'est pas activé par défaut

Cette section explique comment activer TLS v1.3 si vous utilisez l'un des éléments suivants de Java:

  • JDK Oracle 8u261 ou version ultérieure, mais inférieur au JDK Oracle 8u341
  • OpenJDK 8u272 ou version ultérieure, mais inférieur à OpenJDK 8u352

Dans le processeur de messages, définissez la propriété Java jdk.tls.client.protocols. Les valeurs sont séparées par des virgules et peuvent contenir un ou plusieurs des éléments suivants : TLSv1, TLSv1.1, TLSv1.2, TLSv1.3 et SSLv3

Par exemple, si vous définissez -Djdk.tls.client.protocols=TLSv1.2,TLSv1.3, le client protocoles TLSv1.2 et TLSv1.3.

Voir pour Modifier Propriétés JVM à comment définir les propriétés de la JVM dans un composant Edge.

Pour activer les protocoles TLS v1, 1.1, v1.2 et v1.3:

  1. Définissez la configuration suivante dans le fichier de configuration du processeur de messages (/opt/apigee/customer/application/message-processor.properties):
       bin_setenv_ext_jvm_opts=-Djdk.tls.client.protocols=TLSv1,TLSv1.1,TLSv1.2,TLSv1.3
  2. Redémarrez le processeur de messages.
&gt;

Comment désactiver TLS v1.3 lorsqu'il est activé par défaut

Si vous utilisez Oracle JDK 8u341 ou version ultérieure, ou OpenJDK 8u352 ou version ultérieure, TLSv1.3 est activé par par défaut pour les clients. Si vous souhaitez désactiver TLS v1.3 dans de tels cas, deux options s'offrent à vous:

Vérifier la version de Java dans un processeur de messages

Pour vérifier la version de Java installée dans un processeur de messages, connectez-vous à ce processeur. et exécutez la commande suivante:

java -version

L'exemple de résultat ci-dessous montre qu'OpenJDK 8u312 est installé.

$ 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)

Algorithmes de chiffrement compatibles

À l'heure actuelle, Java 8 prend en charge deux algorithmes de chiffrement TLS v1.3:

  • TLS_AES_256_GCM_SHA384
  • TLS_AES_128_GCM_SHA256

Vous pouvez utiliser openssl pour vérifier si votre serveur cible est compatible avec TLS v1.3 et au moins l'un des les chiffrements ci-dessus en utilisant ci-dessous. Notez que cet exemple utilise l'utilitaire openssl11, qui a TLS v1.3 activé.

$ openssl11 s_client -ciphersuites "TLS_AES_256_GCM_SHA384:TLS_AES_128_GCM_SHA256" -connect target_host:target_port -tls1_3