Geeks With Blogs
Igor Milovanović .NET, cats and more...

Manchmal habe ich den Eindruck  dass es länger dauern kann eine Web-Anwendung zu installieren als sie zu implementieren :-) Es geht um folgendes Szenario:

- IIS 6.0  mit Integrierten Windows Authentifizierung
- SQL Server Verbindung mit Trusted Connection (SSPI) um das Eintragen der Credentials in die web.config zu vermeiden.


Eigentlich ganz harmlos, oder? Man lässt die Anwendung in einem Application-Pool laufen, ordnet einen "low-priviledge" Benutzer dem Application Pool zu, und trägt den Benutzer als SQL Server Benutzer ein. Drei Clicks im IIS-Manager und die Sache ist erledigt.

Es ist leider nicht so einfach.

Wenn man das macht, und versucht sich einzulogen, kann es einem passieren dass der IIS die ganze Zeit mit 401.1 Fehler reagiert, was sich mit einem ständigen "Hochpoppen" der Login-Box in Internet-Explorer manifestiert. Der Grund dafür ist dass die Kerberos mutual authentication (default IIS 6.0) fehlschlägt; Der Grund dafür ist meistens dass die Service Principal Names (SPNs) für die URL nicht registriert sind, so dass die Server/Client authentifizierung fehlschlägt. Man kann das Problem auf zwei Arten lösen:

1) Die Service Principal Names (SPNs) registrieren (mit setspn.exe tool)

setspn -a http://myapp MYDOMAIN\lowpriwiledgedsqlserveruser
setspn -a http://myapp.mydomain.com MYDOMAIN\lowpriwiledgedsqlserveruser

2) Die Default-Authentifizierung von IIS 6.0 von Negotiate, NTLM auf NTLM umstellen. (Entweder per Hand, in der Metabase.xml) oder mit

cscript.exe C:\InetPub\AdminScripts\adsutil.vbs SET W3SVC/1/NTAuthenticationProviders "NTLM"


Hier ist ein sehr guter Artikel von Craig Boland, der mir viel Zeit gespart hat:


[1] Windows Integrated Security and IIS 6.0 Application Pools
[2] Forcing NTLM Authentication in IIS 6.0
[3] Kerberos Mutual Authentication

Posted on Friday, March 3, 2006 11:41 AM .NET , German | Back to top


Comments on this post: Integrierte Windows Authentifizierung und IIS 6.0 Application Pools

No comments posted yet.
Your comment:
 (will show your gravatar)


Copyright © Igor Milovanovic | Powered by: GeeksWithBlogs.net