2009-06-23 10 views
5

Escenario:Instalar certificado de cliente para la cuenta de grupo de aplicaciones IIS

  • Un cliente llama a un servicio Web en la LAN. WebService A se ejecuta en un grupo de aplicaciones con Identity "Network Service".
  • WebService A hace algo de trabajo, se prepara para llamar a WebService B.
  • WebService B requiere un cliente cert (* .cer) y SSL.
  • WebService A está en un servidor dedicado de Windows 2003.
  • Todo funciona en el entorno Dev como debe ser (pero el desarrollador con privilegios de administrador siempre se registra de forma local (no es sorpresa!).
  • Los certificados se almacenan en el disco en C:\MyCertificates\
  • El certificado se está aplicando en tiempo de ejecución con éxito en Dev con este fragmento: myWebService.ClientCertificates.Add(new X509Certificate.CreateFromCertFile(certPath));

Problema: WebService Un servicio Web está llamando B, y la excepción devuelto es:

La solicitud con el estado HTTP 403 : Prohibida

Esto realmente significa que el certificado no fue enviado en la solicitud de servicio Web B.

estoy bajo el supuesto de que la instalación de este certificado en el navegador no es una solución. La configuración del navegador generalmente es por usuario, y debo entregar el certificado al usuario cuyas credenciales se está ejecutando el servicio web. (por ejemplo, servicio de red, sistema o lo que sea que esté en la configuración de IIS AppPool).

Pregunta: ¿Cómo puedo otorgar acceso o asociación a mi certificado que reside en la ubicación especificada del directorio al Servicio de red u otra cuenta que no sea de usuario?

Respuesta

Cuestiones relacionadas