Esto es un truco para forzar autenticación básica en Windows 7 utilizando carpetas web, mas conocido como protocolo WebDAV.
Esta solución solo funciona con Windows 7 y service pack 1 instalado, y si el identificador del cliente web es «Microsoft-WebDAV-MiniRedir/6.1.7600».
En Windows Vista y Windows 7, se ha alterado el comportamiento por defecto del protocolo WebDAV. Esto significa, que el sistema, por omisión, no conectará a una carpeta DAV de Apache que esté protegida usando la directiva AuthBasic, incluso aunque usemos SSL, pero en cambio, sí funciona si se usa AuthDigest, y este método, aunque es más seguro, es menos flexible en algunos casos.
Por ejemplo, no podríamos autenticar contra un servidor LDAP si usamos AuthDigest.
Hay dos posibles soluciones para corregir el webdav en Windows 7:
1. Cambiar la autenticación en el servidor de AuthBasic a AuthDigest
Si usamos una combinación de un fichero .htaccess y .htpasswd, esta es la solución mas sencilla.
Así sería un ejemplo de configuración de carpeta DAV en Apache 2.2, con AuthDigest:
AuthType Digest
AuthName "Acceso privado"
AuthDigestDomain /privado/ http://midominio.dom/privado/
AuthDigestProvider file
AuthUserFile /web/midominio.com/auth/.digest_pw
Require valid-user
2. Modificar el registro de Windows
En primer lugar, hay que revisar el servicio «Cliente Web», y asegurarnos de que está puesto en «Automático».
Después, hay que modificar la siguiente rama del registro:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters\BasicAuthLevel
Y establecer valor 2.
Personalmente, me he encontrado con mas de un caso como este, y me es mas sencillo simplemente ejecutar un fichero de registro, que modifica la rama indicada y establece el valor correcto.
[wpdm_file id=1 title=»true»]
Tras este cambio en el registro, se puede reiniciar el equipo para que el cambio se haga efectivo, pero con reiniciar el servicio «Cliente Web» debería ser suficiente (y de paso, ahorras algo de tiempo).