IE, IIS, Windows autentizace lokálně na serveru
Narazil jsem dnes na problém Windows Serveru 2008 R2, na kterém byl nainstalovaný IE 11. V IIS byl nakonfigurovaný intranetový web, který vyžadoval Windows ověření (Kerberosem nebo NTLM). Zatímco vzdálený přístup na web z jiného počítače šel bez problémů, z lokálně puštěného prohlížeče ani omylem.
Dohledal jsem, že je to zabezpečení “by design” už od doby WXP SP2 a Windows Serveru 2003 SP1. Jde o to, že systém kontroluje, zdali autentizace pomocí FQDN DNS jména obsahuje název serveru. A pokud ne, zobrazí se HTTP 401.1 – Unauthorized: Logon Failed.
V řešení mi nakonec pomohl KB896861, z něhož jsem kupodivu aplikoval jen část doporučené první metody – ale funguje to. V HKLM\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0 jsem vytvořil Multi-String položku nazvanou BackConnectionHostNames, do níž jsem vložil všechny host-headers jména webů založených v IIS.
Záhadou je, že dle toho staršího postupu by mělo být potřeba nastavit též nenulovou hodnotu klíče DisableStrictNameChecking – nicméně jsem to nenastavil a vše to funguje, jak potřebuji.