Cómo solucionar el error HTTP 401.2 - Unauthorized:
Error HTTP 401.2 - Unauthorized
No está autorizado a ver esta página; los encabezados de autenticación no son válidos.
o el error en inglés:
HTTP Error 401.2 - Unauthorized You are not authorized to view this page due to invalid authentication headers.
El error me sale cuando intento cambiar la autenticación de una aplicación web local en mi máquina de desarrollo. Por default un sitio web creado en IIS tiene la autenticación anónima activada para que sea un sitio abierto.
En esta ocasión estoy intentando utilizar una cuenta de windows para acceder al sitio web y por eso quiero activar la autenticación de windows. Lo que hago es desactivar la autenticación anónima y activar la autenticación de windows desde IIS > sitios > mismito > Autenticación.
Es importante mencionar que para mi sitio web local, estoy usando un host name personalizado, es decir que tengo una linea en el archivo hosts que dice:
127.0.0.1 local.midominio.com
Esto es para poder accederlo desde mi navegador local con esa dirección y facilitar mis pruebas.
Investigando un poco, el problema se presenta cuando se utiliza la autenticación integrada y el host name apunta a la dirección loopback local, es decir 127.0.0.1
Solución.
La solución es especificar el o los host names que están mapeados a la dirección de loopback local en el registro. Sigan los pasos de abajo para solucionar el problema:
- Setear el registro DisableStrictNameChecking a 1. Creo que este paso puede ser omitido, chequen sin hacerlo.
- Click Inicio, click Run, escribir regedit, y click OK.
- En el Registry Editor, localizar y click en el siguiente registro: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0
- Click derecho en MSV1_0, seleccionar New (Nuevo), y click en Multi-String (Valor de cadena multiple).
- Escribir BackConnectionHostNames y dar ENTER.
- Click derecho en BackConnectionHostNames, y click en Modificar.
- Escribir el o los host names de los sitios locales, y click OK.
- Cerrar el Registry Editor, reiniciar IIS.
Una vez hecho esto, prueban de nuevo.
Espero les sirva.