Problème : échec de la connexion aux serveurs LiveCycle/AEM Forms à partir des applications iOS et de certains clients Mac OS après l’introduction de la fonction ATS (App Transport Security) d’Apple

Les clients se connectent à un serveur LiveCycle/AEM Forms à l’aide du protocole HTTPS. Pour les clients iOS 9 ou Mac OS 10.11 se connectant au serveur LiveCycle/AEM Forms via HTTPS, Apple requiert que le serveur soit conforme à App Transport Security (ATS). Si le serveur n’est pas conforme à ATS, Apple bloque l’ensemble des connexions HTPPS au serveur. 

Pour que votre serveur soit conforme à ATS, assurez-vous que les conditions suivantes sont remplies :

  • Le serveur LiveCycle/AEM Forms prend en charge les connexions utilisant la norme TLS 1.2 via HTTPS.
  • La connexion TLS 1.2 utilise des chiffrements qui permettent de garantir une parfaite confidentialité des transferts à l’aide de l’échange de clé ECDHE (Elliptic curve Diffie-Hellman Ephemeral). Pour une liste des chiffrements qui possèdent cette propriété, voir NSAppTransportSecurity dans la page Information Property List Key Reference de la documentation préliminaire d’Apple. 
  • Le certificat de serveur est signé avec SHA-2, sa taille condensée minimale étant de 256 bits.
  • Le certificat de serveur Leaf est signé avec l’un des types de clés suivants :
    • clé avec clé > 2048 octets
    • clé ECC avec clé > 256 octets

 Voir la documentation préliminaire d’Apple

L’utilisation de la norme TLS 1.2 pour l’ensemble des communications, y compris les appareils autres qu’Apple, est recommandée pour des raisons de sécurité et pour garantir la conformité avec ATS.

Vous pouvez utiliser l’une des méthodes suivantes pour vérifier si votre serveur est conforme à ATS :

  • Utilisation de SSL Labs si l’URL du serveur est publique
  • Utilisation d’un ordinateur Mac

Suivez la procédure ci-après pour vérifier si votre serveur est conforme à ATS à l’aide de SSL Labs :

  1. Dans votre navigateur, ouvrez la page https://www.ssllabs.com/ssltest/analyze.html

  2. Saisissez l’URL de votre serveur dans le champ Hostname, puis cliquez sur Submit

    Vous pouvez saisir acrobat.com ou sélectionner l’une des options disponibles pour connaître son comportement. 

  3. Dans la page de rapport SSL, recherchez Apple ATS 9/iOS 9.

    Si votre serveur est conforme à ATS, un message de couleur verte s’affiche pour ATS 9/iOS 9. Si votre serveur n’est pas conforme à ATS 9/iOS 9, un message de couleur rouge s’affiche. 

Suivez la procédure ci-après pour vérifier si votre serveur est conforme à ATS à l’aide d’un ordinateur Mac doté de Mac OS X 10.11 El Capitan :

  1. Dans le terminal, saisissez : /usr/bin/nscurl --ats-diagnostics <url>

    Remplacez <url> par l’URL du serveur dont vous souhaitez vérifier la conformité à ATS. 

  2. Votre serveur est conforme à ATS si le message suivant s’affiche :

    ---
    
    ATS Default Connection
    
    Result: PASS
    
    ---
    

Vous pouvez utiliser l’une des procédures décrites ci-dessus pour confirmer la conformité à ATS. 

Si votre serveur échoue au test de conformité à ATS

Effectuez les étapes suivantes pour résoudre le problème de conformité à ATS : 

  • Utilisez un proxy (par exemple, Apache).
    Si votre configuration utilise déjà un équilibreur de charge ou un proxy, ou si vous avez introduit un nouveau serveur de proxy, vous pouvez modifier les paramètres de proxy pour résoudre le problème d’échec de connexion SSL. 
    Pour le nouveau serveur proxy : assurez-vous qu’il porte le même nom de domaine que votre serveur LiveCycle/AEM Forms, et consultez la documentation du serveur proxy/de l’équilibreur de charge afin de rendre votre serveur proxy conforme à ATS. 

Si vous ne pouvez pas utiliser un serveur proxy, suivez la procédure en fonction du serveur d’application que vous utilisez.

JBoss

Configurer TLS 1.2 sur un serveur JBoss

TLS 1.2 est incompatible avec certaines versions de Java. Pour résoudre le problème de compatibilité, avant d’activer TLS, voir Résolution du problème de compatibilité de TLS 1.2 avec Java

Si votre configuration prend en charge TLS 1.2, suivez la procédure ci-après pour activer TLS sur le serveur JBoss :

  1. Configurez SSL à l’aide de LCM.

  2.  Ouvrez le fichier lc_turnkey.xml dans l’éditeur.

    Tracé: 

    Pour LiveCycle : <LC-install-directory>\jboss\server\lc_turnkey\deploy\jbossweb.sar\server.xml

    Pour AEM Forms : <AEM-install-directory>\jboss\standalone\configuration\lc_turnkey.xml

  3. Définissez la valeur du protocole SSL sur TLSv1.2 comme indiqué ci-dessous :

    <connector name="http" protocol="HTTP/1.1" scheme="http" socket-binding="http"/>
    <connector name="https" protocol="HTTP/1.1" scheme="https" socket-binding="https" secure="true">
    <ssl name="lc-ssl" password="password" protocol="TLSv1.2" key-alias="AEMformsCert" certificate-key-file="C:/Adobe/Adobe_Experience_Manager_Forms/jboss/standalone/configuration/aemformses.keystore" />
    </connector>
  4. Redémarrez le serveur.

Procédure à suivre pour vérifier si le navigateur utilise la version mise à jour de TLS

  1. Ouvrez une page adminui sécurisée dans Firefox :

    URL : https://<server>:<port>/adminui

  2. Cliquez sur l’icône de verrou verte à gauche de l’URL, puis cliquez sur le bouton suivant > Plus d’informations.

    La version de TLS est indiquée sous les détails techniques. 

Résolution du problème de compatibilité de TLS 1.2/ATS avec Java :

Si vous utilisez JBoss Turnkey, qui est fourni avec la mise à jour 26 ou 31 d’Oracle Java 6, ou si vous avez installé manuellement Oracle Java 6 :

  • Si vous disposez de LiveCycle ES4 ou version antérieure :

Si vous utilisez JBoss Turnkey, qui est fourni avec la mise à jour 26 ou 31 d’Oracle Java 6, ou si vous avez installé manuellement Oracle Java 6 :

  • Si vous disposez de LiveCycle ES4 ou version antérieure :

WebLogic

Configurer TLS 1.2 sur un serveur WebLogic

TLS 1.2 est incompatible avec certaines versions de Java. Pour résoudre le problème de compatibilité, avant d’activer TLS, voir Résolution du problème de compatibilité de TLS 1.2 avec Java

Si votre configuration prend en charge TLS 1.2, suivez la procédure ci-après pour activer TLS sur un serveur WebLogic :

  1. Pour configurer SSL, voir Configuration de SSL pour un serveur WebLogic

  2. Redémarrez tous les serveurs.

  3. Dans Domain Configurations, cliquez sur Servers > [Managed Server] > Configuration > l’onglet Server Start.

  4. Sous la zone Arguments, ajoutez -Dweblogic.security.SSL.protocolVersion=TLSV1.2.

  5. Cliquez sur Enregistrer

Procédure à suivre pour vérifier si le navigateur utilise la version mise à jour de TLS

  1. Ouvrez une page adminui sécurisée dans Firefox :

    URL : https://<server>:<port>/adminui

  2. Cliquez sur l’icône de verrou verte à gauche de l’URL, puis cliquez sur le bouton suivant > Plus d’informations.

    La version de TLS est indiquée sous les détails techniques. 

Vérifiez la conformité à TLS à l’aide de SSL labs ou d’un ordinateur Mac. La procédure de vérification de la conformité à TLS est décrite ci-dessus. 

Résolution du problème de compatibilité de TLS 1.2/ATS avec Java :

Si vous utilisez WebLogic 10.x.x avec Jrockit Java 6 R28 installé :

WebSphere

Configurer SSL/TLS 1.2 sur un serveur WebSphere Application Server

TLS 1.2 est incompatible avec certaines versions de Java. Pour résoudre le problème de compatibilité, avant d’activer TLS, voir Résolution du problème de compatibilité de TLS 1.2 avec Java

Si votre configuration prend en charge TLS 1.2, suivez la procédure ci-après pour configurer TLS sur un serveur WebSphere Application Server :

  1. Redémarrez le serveur. 

  2. Pour configurer SSL avec TLS, voir les étapes décrites dans la page Configuration de WebSphere Application Server pour la prise en charge de TLS 1.2.

  3. Redémarrez le serveur. 

Procédure à suivre pour vérifier si le navigateur utilise la version mise à jour de TLS

  1. Ouvrez une page adminui sécurisée dans Firefox :

    URL : https://<server>:<port>/adminui

  2. Cliquez sur l’icône de verrou verte à gauche de l’URL, puis cliquez sur le bouton suivant > Plus d’informations.

    La version de TLS est indiquée sous les détails techniques. 

Vérifiez la conformité à TLS à l’aide de SSL labs ou d’un ordinateur Mac. La procédure de vérification de la conformité à TLS est décrite ci-dessus. 

Résolution du problème de compatibilité de TLS 1.2 avec Java :

Si vous utilisez WebSphere Application Server 7.0.0.x et qu’IBM Java 6 est installé :

  • Mettez à jour WebSphere Application Server vers la version 7.0.0.35 et mettez à jour IBM Java 6.
  • Ajoutez Bouncy Castle Provider (1.5.4).
  • Activez les chiffrements ECDHE dans WebSphere :
    1. Connectez-vous à WebSphere Application Server Integrated Solutions Console.
    2. Accédez à Security > SSL Certificate & Key Management > SSL Configurations > NodeDefaultSSLSettings > Quality of protection (QoP settings). 
    3. Choisissez d’utiliser des groupes de suite de chiffrement personnalisés et ajoutez les chiffrements ECDHE appropriés.
    4. Enregistrez et redémarrez le serveur.

Si vous utilisez WebSphere Application Server 8.0.0.x, et qu’IBM WebSphere Java SDK 1.6 est installé : 

  • Mettez à jour WebSphere Application Server vers la version 8.0.0.10.
  • Mettez à jour Java.
    Les groupes de suite de chiffrement fort utilisent des chiffrements ECDHE par défaut.
  • Activez TLS 1.2 et redémarrez le serveur. 

Si vous utilisez WebSphere Application Server 8.x.x.x, et qu’IBM J9 Virtual Machine (build 2.6 et 2.7, JRE 1.7.0) est installé :

  • Ajoutez Bouncy Castle Provider (1.5.4). Suivez la procédure ci-après pour ajouter Bouncy Castle Provider (1.5.4) dans le fichier de sécurité Java :
    1. Copiez le fichier .jar de Bouncy Castle Provider dans le dossier JDK sous l’installation de serveur.  Par exemple : C:\Adobe\Adobe LiveCycle ES4\Java\jdk1.6.0_31\jre\lib\ext.
      Pour télécharger le fichier .jar, cliquez ici.
    2. Mettez à jour le fichier de configuration sous $JAVA_HOME/jre/lib/security/java.security
      avec l’entrée suivante :
      security.provider.N=org.bouncycastle.jce.provider.BouncyCastleProvider
      (remplacez N par le nombre logique suivant)
      Il est déconseillé d’installer Bouncy Castle Provider 1.5.5 en raison d’un problème de signature connu. 

Remarque :

Ajoutez Bouncy Castle uniquement si les chiffrements requis ne sont pas répertoriés dans la liste des chiffrements affichée dans la console d’administration. 

  • Activez les chiffrements ECDHE dans WebSphere :

    1. Connectez-vous à WebSphere Application Server Integrated Solutions Console.
    2. Accédez à Security > SSL Certificate & Key Management > SSL Configurations > NodeDefaultSSLSettings > Quality of protection (QoP settings). 
    3. Choisissez d’utiliser des groupes de suite de chiffrement personnalisés et ajoutez les chiffrements ECDHE appropriés.
    4. Enregistrez et redémarrez le serveur.

Ce produit est distribué sous licence Creative Commons Attribution - Pas d’utilisation commerciale - Partage à l’identique 3.0 non transposé  Les publications Twitter™ et Facebook ne sont pas couvertes par les dispositions Creative Commons.

Mentions légales   |   Politique de confidentialité en ligne