es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

jarsigner y proxy con autenticación para la autoridad de marca de tiempo o alternativas.

Anteriormente estábamos utilizando un proxy sin autenticación y jarsigner funcionaba bien de esa manera. Ahora que el proxy requiere usuario y contraseña, no tenemos manera de que jarsigner funcione con eso.

¿Existe alguna forma de hacer que jarsigner funcione con un proxy que requiere autenticación?

Aquí está el comando que estábamos utilizando anteriormente (sin autenticación):

jarsigner -sigalg SHA256withRSA -digestalg SHA-256 -verbose -tsa ‘http://timestamp.digicert.com’ -J-Dhttp.proxyHost=my.server -J-Dhttps.proxyPort=8080

Hemos intentado lo siguiente:

jarsigner -sigalg SHA256withRSA -digestalg SHA-256 -verbose -tsa ‘http://timestamp.digicert.com’ -J-Dhttp.proxyHost=my.server -J-Dhttps.proxyPort=8080 -J-Dhttp.proxyUser=user-J-Dhttp.proxyPassword=password

Y esto:

jarsigner -sigalg SHA256withRSA -digestalg SHA-256 -verbose -tsa ‘http://timestamp.digicert.com’ -J-Djava.net.useSystemProxies=true

Ninguno de ellos está funcionando.

¿Existe alguna forma de firmar archivos JAR que funcione? Es decir, ¿puede jarsigner funcionar? En caso contrario, ¿existen otras alternativas?

Estamos utilizando openjdk8.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Sí, hay una forma de hacer que jarsigner funcione con un proxy que requiere autenticación. Puedes pasar el usuario y la contraseña como propiedades del sistema usando la bandera -J-D. Aquí tienes un ejemplo:

    jarsigner -sigalg SHA256withRSA -digestalg SHA-256 -verbose -tsa ‘http://timestamp.digicert.com’ -J-Dhttp.proxyHost=my.server -J-Dhttps.proxyPort=8080 -J-Dhttp.proxyUser=user -J-Dhttp.proxyPassword=password myjarfile.jar myalias

    Asegúrate de reemplazar ‘user’ y ‘password’ con las credenciales reales de tu servidor proxy.

    Si esto aún no funciona, puedes intentar establecer las opciones del proxy como variables de entorno antes de ejecutar el comando jarsigner. Aquí tienes un ejemplo:

    export http_proxy=http://user:password@my.server:8080
    export https_proxy=https://user:password@my.server:8080
    jarsigner -sigalg SHA256withRSA -digestalg SHA-256 -verbose -tsa ‘http://timestamp.digicert.com’ myjarfile.jar myalias

    Nota: estos ejemplos asumen que el servidor proxy está utilizando autenticación básica de HTTP. Si tu servidor proxy utiliza un método de autenticación diferente, es posible que necesites utilizar un enfoque diferente.

Comments are closed.