Cita:
Empezado por unomasmas
Yo no lo tengo como servicio y posiblemente eso cambie las cosas pero no necesariamente tienes que coger el certifcado del almacén. Puedes pasarle un certificado concreto, con lo que sería igual qué usuario se conecte.
Código:
HttpWebRequest.ClientCertificates = new X509CertificateCollection() { certificado };
|
Hola unomasmas, muchas gracias por la respuesta.
Ya le paso el certificado concreto, de la misma forma que se hace con el código que has indicado, añadiendolo a la colección ClientCertificates:
Código:
httpWebRequest.ClientCertificates.Add(this.certificate);
Yo entiendo que esto sirve para decirle cual de los certificados del almacén tiene que utilizar. Pero si no están en el almacén de certificados del usuario (instalados en el navegador) no funciona el post de httpWebRequest para TicketBAI porque no encuentra certificado de cliente.
De hecho en la documentacion de microsoft ya lo indica:
https://docs.microsoft.com/es-es/dot...t?view=net-5.0
hay la frase:
Cita:
|
Para la autenticación de cliente con HttpWebRequest , el certificado de cliente debe estar instalado en el almacén de certificados del usuario actual.
|
Supongo que tu también lo tienes en el almacén y por eso te funciona cuando no es un servicio de windows.
Muchas gracias de todas formas, a ver si hay suerte.