with development consumir consume asp.net iis ssl client-certificates

asp.net - consumir - iis express development certificate



Error de IIS 7 "No existe una sesión de inicio de sesión especificada. Es posible que ya se haya cancelado. "Cuando se utiliza https (14)

Estoy intentando crear Autenticación de Certificados de Cliente para mi sitio web asp.net.

Para crear certificados de cliente, primero necesito crear una Autoridad de certificación:

makecert.exe -r -n "CN = Mi CA personal" -pe -sv MyPersonalCA.pvk -a sha1 -len 2048 -b 01/01/2013 -e 01/01/2023 -cy authority MyPersonalCA.cer

Luego, tengo que importarlo a IIS 7, pero como acepta el formato .pfx, lo convierto primero

pvk2pfx.exe -pvk MyPersonalCA.pvk -spc MyPersonalCA.cer -pfx MyPersonalCA.pfx

Después de importar MyPersonalCA.pfx, trato de agregar el enlace del sitio https a mi sitio web y elegir el anterior como certificado SSL, pero aparece el siguiente error:

¿Alguna sugerencia?


Acabo de tener este problema hoy y me siento obligado a publicar mi solución con la esperanza de que pierda menos cabello de lo que acabo de hacer.

Después de probar las soluciones anteriores, tuvimos que volver a emitir el certificado SSL del proveedor SSL (RapidSSL emitiendo como revendedor para GeoTrust).

No hubo ningún costo con este proceso, solo cinco minutos de espera mientras recibíamos los correos de confirmación (admin @) y volvimos a tener acceso.

Una vez que tuvimos la respuesta, utilizamos IIS> Certificados de servidor para instalarlo. No necesitamos el complemento MMC.

https://knowledge.rapidssl.com/support/ssl-certificate-support/index?page=content&id=SO5757

Mantenemos abierta una ventana de escritorio remoto para abrir todo el servidor, para evitar problemas con diferentes cuentas / sesiones de inicio de sesión, etc. Creo que es un error de IIS, como cree otro experto, ya que solo tenemos una cuenta de RDC. Lo que es más irritante es que el mismo certificado ha estado funcionando perfectamente durante dos meses antes de "romper" repentinamente.


En lugar de importar el certificado de IIS, hágalo desde MMC. Luego, registre IIS para el enlace.


En mi caso fue porque el usuario del Servicio Mundial de Publicaciones no tenía permisos para el certificado. Después de instalar el certificado, acceda al módulo de certificados en MMC y haga clic con el botón derecho en el certificado con el problema. Seleccione "Administrar claves privadas ..." en el menú "Todas las tareas" y agregue el usuario anterior. Este era el usuario del SISTEMA en mi caso.


En mi caso, importé una versión más reciente de un certificado (PFX para IIS) de StartSSL recientemente y olvidé eliminar la anterior, lo que de alguna manera causó este error (ahora dos certs son del mismo tipo). Quité los dos, importé el correcto y ahora funciona.


En nuestro caso, este problema se produjo porque hemos instalado el certificado en una máquina virtual y lo hemos creado para su uso posterior.

Al crear otra VM a partir de la imagen creada previamente, el certificado envía el mensaje.

Para evitar esto, asegúrese de instalar el certificado en cada VM instalada.


Estaba obteniendo un error al intentar vincular localhost pfx cert para mi máquina de desarrollo. Antes de probar algo de esto, intenté algo más simple primero.

  1. Cerré cualquier sitio localhost dev que había abierto.
  2. Dejó mi servidor IIS y cerró el administrador
  3. ejecutar el administrador como administrador
  4. Agregué todos mis enlaces https, sin errores ni problemas esta vez.
  5. reiniciado iis

Todo parece funcionar después de eso.


Esto debe ser algún tipo de error de IIS, pero encontré la solución.

1- Exportar MyPersonalCA.pfx desde IIS.

2- Convierte a .pem :

openssl pkcs12 -in MyPersonalCA.pfx -out MyPersonalCA.pem -nodes

3- Convierta de nuevo a .pfx :

openssl pkcs12 -export -in MyPersonalCA.pem -inkey MyPersonalCA.pem -out MyPersonalCA.pfx

4- Importe de nuevo a IIS .



Me encontré con este mismo problema, pero lo solucioné de otra manera. Creo que la cuenta que estaba usando cambió desde el momento en que inicialmente intenté configurar el certificado hasta el momento en que regresé para terminar el trabajo, creando así el problema. Cuál es el problema, no sé, pero sospecho que tiene que ver con algún tipo de hash del usuario actual y que es inconsistente en algunos escenarios a medida que el usuario es modificado o recreado, etc.

Para solucionarlo, eliminé IIS y el complemento Certificados (para el usuario actual y el equipo local) todas las referencias del certificado en cuestión:

A continuación, importé el archivo * .pfx en el complemento de certs en MMC, colocándolo en el nodo Local Computer / Personal:

  1. Haga clic con el botón derecho en el nodo Certificados en Personal (en Computadora local como raíz)
  2. Todas las tareas -> Importar
  3. Vaya a través del asistente para importar su * .pfx

A partir de ese momento, pude volver a IIS y encontrarlo en los Certificados del servidor. Finalmente, fui a mi sitio, edité los enlaces y seleccioné el certificado correcto. Funcionó porque el usuario fue constante durante todo el proceso.

Al punto mencionado en otra respuesta, no debería tener que recurrir a marcarlo como exportable ya que ese es un problema de seguridad importante . De hecho, permite que cualquier persona que pueda acceder a la caja con un conjunto similar de permisos lleve su certificado e importarlo a otro lugar. Obviamente eso no es óptimo.


Probablemente ya a nadie le importe esto, pero acabo de enfrentar este problema con mi enlace al sitio web de IIS 7. La forma en que lo arreglé fue ir a la Autoridad de Certificación y encontrar el certificado emitido al servidor con el problema. Verifiqué la cuenta de usuario que solicitó el certificado. Luego, inicié sesión en el servidor IIS usando RDP con esa cuenta. Pude volver a vincular el protocolo https utilizando solo esa cuenta. No fue necesario exportar, volver a emitir o realizar cambios en la extensión.


Recibí este error debido a la línea de comando de openssl incorrecta durante la exportación del certificado PKCS # 12. -certfile clave estaba mal. Exporté el certificado nuevamente y se importó con éxito.


Tuve el mismo problema. Se solucionó quitando el certificado de la tienda personal (alguien lo puso) y del alojamiento web. Todo hecho a través del administrador de IIS. Luego volví a agregar a la tienda de alojamiento web (con todo marcado) y puedo usar HTTPS nuevamente ...


Tuvimos el mismo problema debido a la importación incorrecta del certificado en el almacén de certificados personales de usuario actual. Quitarlo del almacén personal del usuario actual e importarlo en el almacén de certificados personales de la máquina local resolvió el problema.


Advertencia de seguridad : lo que realmente significa la casilla de verificación es que el certificado puede ser leído por usuarios que no deberían poder leerlo. Como el usuario que ejecuta el proceso de trabajo de IIS. En producción use la otra respuesta en su lugar.

También me sucedió a mí y se solucionó al asegurar que "Permitir que se exporte este certificado" esté marcado cuando lo importe:

(gracias a esta publicación !)