Maison > Java > javaDidacticiel > Pourquoi est-ce que je reçois une alerte de prise de contact SSL « Unrecognized_Name » après la mise à niveau vers Java 1.7 ?

Pourquoi est-ce que je reçois une alerte de prise de contact SSL « Unrecognized_Name » après la mise à niveau vers Java 1.7 ?

Patricia Arquette
Libérer: 2024-12-23 10:00:25
original
213 Les gens l'ont consulté

Why Do I Get an

Alerte de prise de contact SSL : erreur « Unrecognized_Name » après la mise à niveau vers Java 1.7.0

Avec la mise à niveau vers Java 1.7, les utilisateurs ont rencontré un Erreur "unrecognized_name" lors de l'établissement de connexions HTTPS. Ce problème provient de l'introduction de la prise en charge de l'indication de nom de serveur (SNI) dans Java 7, activée par défaut.

Cause

Certains serveurs mal configurés émettent un « Nom non reconnu » avertissement lors de la prise de contact SSL. Malheureusement, Java est l'un des rares clients à ne pas ignorer cet avertissement.

Solution de contournement

Pour résoudre ce problème, les utilisateurs peuvent désactiver la prise en charge SNI en utilisant :

java -Djsse.enableSNIExtension=false yourClass
Copier après la connexion

Alternativement, ils peuvent définir la propriété dans leur Java code :

System.setProperty("jsse.enableSNIExtension", "false");
Copier après la connexion

Remarque : Cette propriété doit être définie avant d'effectuer toute action SSL, car sa modification ultérieure n'aura aucun effet sur le statut SNI.

Solution hybride pour la préservation du SNI

En cas de désactivation complète du SNI est irréalisable, envisagez l'approche hybride suivante :

  1. Créez un SSLSocket avec le nom d'hôte souhaité et tentez la prise de contact.
  2. Si une exception "nom_non reconnu" est rencontrée, réessayez sans spécifier de nom d'hôte pour désactiver SNI.
  3. Cette approche permet l'utilisation de SNI avec repli en cas de configuration incorrecte. serveurs.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal