Limitar el registro de depuración de Java SSL

Mehvish Ashiq 20 junio 2023
  1. Depuración de Java SSL y su importancia
  2. Limitar el registro de depuración de Java SSL
Limitar el registro de depuración de Java SSL

Hoy aprenderemos sobre la depuración de Java SSL, su importancia, varias utilidades y cómo usar una o varias en un solo comando.

Depuración de Java SSL y su importancia

Manejar SSL (Secure Socket Layer) en aplicaciones web Java no es divertido, particularmente cuando obtiene una página fea que dice “No se puede mostrar la página” en su navegador sin solucionar problemas o depurar registros.

Estas situaciones aumentan la importancia de SSL que podemos habilitar para depurar fácilmente nuestras aplicaciones y comenzar a ver registros detallados. Estos registros nos guiarán (a los desarrolladores) sobre este error.

Hay varias utilidades de depuración que podemos usar. El siguiente es el que permite habilitar todos los registros de depuración de SSL en nuestro servidor de aplicaciones JVM (Java Virtual Machine).

No olvide reiniciar su servidor de aplicaciones después de agregar el siguiente parámetro de línea de comando JVM.

-Djavax.net.debug=ssl

El problema es que el comando anterior activará toda la depuración SSL que puede no ser necesaria en algunos escenarios.

Entonces, ¿cómo podemos limitar el registro de depuración de Java SSL? Aprendamos a continuación.

Limitar el registro de depuración de Java SSL

El uso del comando -Djavax.net.debug=ssl registrará una gran cantidad de registros y detalles para cada evento SSL en un servidor. ¿Cómo podemos limitarlo según los requisitos de nuestro proyecto?

Para resolverlo, necesitamos especificar un especificador de depuración (también conocido como indicador) separado por dos puntos (:) para lo cual necesitamos SSL para depurar el registro. Por ejemplo, podemos registrar sobre apretón de manos de la siguiente manera.

-Djavax.net.debug=ssl:handshake

Recuerda que debemos especificar el valor de la propiedad javax.net.debug, ya sea ssl o all, seguido de un especificador de depuración (opcional).

También podemos usar múltiples especificadores de depuración y no es necesario tener un separador en estas opciones (especificadores de depuración), aunque tener un separador (: o ,) aumentará la legibilidad. Vea el siguiente ejemplo para entender claramente.

-Djavax.net.debug=ssl:handshake, record, session

El comando anterior también puede usar dos puntos (:) como separador entre varios especificadores de depuración. Recuerda, no importa qué separador usemos; el orden de los especificadores de depuración tampoco es importante.

Las siguientes son algunas opciones que pueden resultarle útiles.

Especificador de depuración (opción) Descripción
all Enciende toda la depuración.
ssl Activa toda la depuración ssl.
record Se utiliza con ssl y permite el rastreo por registro.
handshake Se usa con ssl e imprime cada mensaje de apretón de manos.
keygen Se utiliza con ssl e imprime datos de generación de claves.
session Se usa con ssl e imprime la actividad de sesión.
defaultctx Podemos usarlo con ssl e imprimir la inicialización ssl predeterminada.
sslctx Se utiliza con ssl y seguimiento de contexto de impresión ssl.
sessioncache Se utiliza con ssl e imprime el seguimiento de caché de sesión.
keymanager Se utiliza con ssl e imprime el seguimiento del administrador de claves.
trustmanager Imprime el seguimiento del administrador de confianza y se usa con ssl.
data Es un volcado hexadecimal de cada mensaje de apretón de manos que podemos usar para ampliar la depuración de apretón de manos.
verbose Se utiliza para la impresión de mensajes detallados apretón de manos y para ampliar la depuración de apretón de manos.
plaintext Volcado hexadecimal de registro texto plano, utilizado para ampliar la depuración de registro.
packet Imprime paquetes SSL/TLS sin procesar, también utilizados para ampliar la depuración de registro.

Puede utilizar cualquiera de ellos según sus necesidades y requisitos del proyecto.

Mehvish Ashiq avatar Mehvish Ashiq avatar

Mehvish Ashiq is a former Java Programmer and a Data Science enthusiast who leverages her expertise to help others to learn and grow by creating interesting, useful, and reader-friendly content in Computer Programming, Data Science, and Technology.

LinkedIn GitHub Facebook

Artículo relacionado - Java SSL