asp.net - valido - migrar a https
Capture el error de solicitud de certificado SSL para redireccionar al sitio correcto (6)
En Apache esto generalmente se hace con mod_rewrite:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^example/.com$ [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]
Google para "reescribir URL IIS", encontrará algunos equivalentes para IIS.
Estamos usando IIS 6 y ASP.Net, cuando los usuarios hacen solicitudes de páginas seguras usando
el usuario obtiene un error:
Código de error: dominio ssl error bad cert
El certificado fue emitido a www.somesite.com e indica que somesite.com usa un certificado de seguridad no válido.
Esperaba poder capturar la solicitud en el evento Application BeginRequest pero el error de SSL ocurre antes de esto. Para invocar el evento Application BeginRequest, el usuario debe hacer clic en el mensaje de error del certificado. ¿Es posible redirigir en código o esta corrección debe ocurrir dentro de IIS?
Intresting. Nunca he observado este comportamiento en ningún sitio hasta que vi esta pregunta. Incluso google tiene este problema. La URL a continuación da el error de cert defectuoso
Por cierto, la mayoría de los sitios tienen un subdominio al cual lo protegen con un certificado. Un voto para la pregunta.
La única solución es incluir el segundo dominio en el certificado con un SubjectAlternativeName. Algunas autoridades de certificación le permitirán hacer esto sin costo adicional.
Todo lo demás solo ocurrirá después de que se establezca la conexión SSL y, por lo tanto, después de que el usuario encuentre el error.
Con HTTPS, la conexión SSL se negocia antes de enviar los encabezados HTTP al servidor, incluido el Host: encabezado que le dice al servidor para qué host virtual está realmente destinada la solicitud.
HOP es correcto con su respuesta. Owen también si tuviéramos el lujo de usar IIS 7 ya que las reglas Rewrite similares a la regla mod_rewrite de Apache ahora son posibles desde dentro de IIS.
Después de una investigación más exhaustiva hoy, junto con nuestros administradores de red y nuestro proveedor de certificados SSL, la aplicación de una SAN a nuestro Certificado es bastante posible y sin cargo.
Sin embargo, debido a problemas políticos dentro del ORG, se decidió que DEV (mi grupo) instituya un redireccionamiento al dominio registrado dentro del evento Application BeginRequest. Para cada solicitud, verificaremos que la URL apunte a nuestro FQDN. Si la solicitud se realiza al ''Nombre corto'', lo señalaremos al FQDN siempre agregando el www al nombre corto que será devuelto por el contexto. Método de host.Sin duda, esto aumentará la charlatanería, etc.
Hice algunas pruebas sobre esto en uno de mis servidores y aquí está lo que encontré.
Tenemos un certificado UCC que funcionará para 5 dominios. Mis 5 dominios son
master mydomain.com
nombres sub alt: mysite.com myweb.com thissite.com www.thissite.com
La razón por la que está configurado así es porque no entendía del todo que quería www. cuando lo hice.
Asi que,
https://mydomain.com - works
https://www.mydomain.com - works
https://www.mysite.com - ERROR
https://mysite.com - works
https://thissite.com - works
https://www.thissite.com - works.
Si tiene un certificado de UCC (parece que sí lo tiene), agregue un nombre alternativo de sujeto con el www en el dominio en cuestión. Entonces funcionará para ambos.
Pasé por todos los pasos para tratar de redirigir con .htaccess y secuencias de comandos del lado del servidor. Pero hop es correcto, no hará nada si no arreglas el certificado.
Es probable que deba abandonar un dominio cuando vuelva a aplicar la clave de su certificado. Solo recuerda cuál dejaste y obtén un nuevo certificado para esa. Siempre y siempre me niego a comprar certificados UCC a partir de ahora. Más problemas de los que valen. 1 dominio = 1 certificado.
Si su dominio está ganando dinero, entonces vale la pena el dinero, si no está ganando dinero, ¿realmente necesita el certificado?
Pude resolver este problema utilizando la función de reescritura de IIS. Resultó ser realmente fácil de arreglar y no tuvimos que comprar un nuevo certificado.