PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 28 → Entidad de Certificación Raíz de Confianza
Entidad de Certificación Raíz de Confianza
Débuté par Ramon, 23 mar. 2021 08:53 - 7 réponses
Membre enregistré
5 messages
Posté le 23 mars 2021 - 08:53
Hola

Actualmente estoy trabajando con la versión 21 de Windev, sin posibilidad de migrar a la 24 que probablemente resolvería este problema fácilmente.

Necesito conectarme al servidor de una compañía que utiliza certificados autofirmados. Para ello dicha compañía me proporciona un certificado CA que he instalado en el almacén de Entidades de Certificación Raíz de Confianza del equipo desde el cual quiero acceder al servidor. Una vez hecho esto puedo conectarme a cualquier https de dicho servidor usando chrome o internet explorer, pero si intento conectarme con un programa hecho con Windev obtengo el mensaje de que estoy intentando conectarme a un servidor cuyo certificado está firmado por una entidad en la que no confio. Sé que puedo pedir a Windev que ignore los errores en el certificado pero no querría hacerlo ya que perdería todo el sentido.

De aquí me surgen varias preguntas que no sé si alguien sabría contestar:

1) Según la documentación Windev utiliza los certificados del equipo pero en la versión 24 tienen una función, CertificatDeConfianceAjoute, que agrega un certificado de confianza a la aplicación, no al sistema. Me surge por tanto la duda de si Windev utiliza su propio almacén de certificados de manera similar a como lo hace Java o si realmente utiliza los certificados presentes en el equipo. Si es así, ¿alguien sabe si la instalación del certificado CA en el equipo se ha de hacer siguiendo algún procedimiento determinado para que Windev lo utilice para validar certificados?

2) ¿Existe alguna manera de hacer en la versión 21 lo mismo que hace CertificatDeConfianceAjoute en la versión 24 aunque sea un procedimiento largo?

Gracias y un saludo

--
-----------------
Ramon
Membre enregistré
60 messages
Popularité : +2 (2 votes)
Posté le 06 avril 2021 - 14:22
Hola Ramon! Te consulto, estás usando las funciones HTTP de Windev para conectarte al servidor de la compañía ? Si es así, tal vez pueda ayudarte la función HTTPCertificate (https://doc.windev.com/en-US/…). Si estás accediendo de otra forma al servidor contame así te podemos ayudar.


Saludos,
friss.
Membre enregistré
5 messages
Posté le 06 avril 2021 - 16:08
Hola Friss

Gracias pero es exactamente al revés. HTTPCertificate sirve para establecer el certificado a usar para identificarse uno mismo al conectarse a un servidor de la compañía. Aquí es al reves, soy yo que me conecto via HTTPS a un servidor y Windev, pese a haber establecido toda la cadena de confianza de un certificado (creo) , me dice que el certificado del servidor está emitido por una entidad en la que no confio. Solo tengo la opción de ignorar el certficado pero no querría hacerlo por motivos de seguridad.

Si tienes alguna pista al respecto agradeceré enormemente una posible solución.

Un saludo

--
-----------------
Ramon
Membre enregistré
60 messages
Popularité : +2 (2 votes)
Posté le 06 avril 2021 - 19:50
Hola Ramon, HTTPCertificate permitiría que le definas a tu programa hecho con Windev (que es el cliente) cuál es el certificado que tiene que usar para validar contra el que le llega del servidor. Es decir, en vez de ir a buscarlo al almacén, le estás definiendo cuál usar. Al menos eso es lo que entiendo yo.

Por eso para mí una opción para probar sería instalar el certificado en el almacén de certificados Personal de Windows, y a través de HTTPCertificate() forzar a que tu programa use dicho certificado para validar contra el certificado que envía el servidor. De esta manera estamos seguros de que tu programa está tomando el certificado correcto, más allá de que después falle.

Algo más, te paso un post para que lo revises que tal vez ayude: https://forum.pcsoft.fr/en-US/pcsoft.us.windev/56464-wd20-httplistcertificate-56497/read.awp…


Saludos,
friss.
Membre enregistré
5 messages
Posté le 06 avril 2021 - 20:19
Friss, en una conexión https hay dos tipos de validación diferente

La más usual es que si tú (cliente) te conectas a un banco (servidor) quieras asegurar que el banco es quien dice ser. En ese caso el banco presenta un certificado que está firmado por una entidad que tu tienes definida en tu almacén de entidades certificadoras de confianza. Es el típico caso en que si tratas de conectarte con el navegador éste te dice que el certificado del servidor no es correcto y tienes que añadir una excepción de seguridad. Este es el caso que estoy tratando de reproducir, la entidad a la que que quiero conectarme me ha proporcionado un certificado de entidad certificadora (valga la redundancia) que he instalado en el almacén de mi ordenador y que cuando utilizo el navegador, ya sea chrome o explorer, acepta sin problemas pero Windev no.

El segundo caso es que cuando tú (cliente) te quieres conectar a la AEAT por ejemplo (servidor), hacienda quiere estar segura de tú eres quien dice ser y te pida un certificado (el típico de la AEAT o el que se intentó con el DNI electrónico). Éste es el caso de que tú hablas y para el que sirve la función HTTPCertificate, para indicarle a Windev qué certificado vas a usar para identificarte tú frente al servidor, no al revés.

De todos modos gracias por la aportación, empezaba a pensar que este foro estaba muerto :-)

--
-----------------
Ramon
Membre enregistré
60 messages
Popularité : +2 (2 votes)
Posté le 07 avril 2021 - 01:27
OK, te entiendo Ramón, gracias por la explicación. Yo creía que lo que te envié podía servirte para los dos tipos de validación.

Esperemos que alguien más pueda echar luz a este tema. De todas formas también puedes enviar la consulta al soporte técnico de PCSoft si no aparece alguna otra idea.

Estamos en contacto.

Saludos,
friss.
Membre enregistré
5 messages
Posté le 07 avril 2021 - 06:10
Hola Friss

El problema con el soporte técnico de Windev es que si no tienes la última versión no puedes hacer consultas, y mantenerse al dia con Windev es realmente costoso para una empresa pequeña con más de una licencia. Trabajo para una empresa francesa y al menos eso es lo que me ha dicho la persona responsable de Windev.

Gracias pero ya me he resignado a tener que ignorar el certificado.

Un saludo y si alguna vez puedo ayudar en algo ya me lo dirás

--
-----------------
Ramon
Membre enregistré
60 messages
Popularité : +2 (2 votes)
Posté le 07 avril 2021 - 12:54
Sí Ramon, se torna costoso en ese escenario.

Tema permisos seguro lo habrás tenido en cuenta no ? Tal vez ejecutar el programa como administrador... Corre desde un Windows de escritorio o servidor ?

En la referencia al post que te pasé hablan de importar el certificado desde el IIS Manager, no se si sirve para tu caso.


Estamos en contacto, te mando un abrazo.