28 March 2011 Fix, HowTo, SQL Robert Muehsig

imageDer typische Microsoft Stack aus IIS & SQL Server sollte sich eigentlich glänzend verstehen. Ab und an gibt es aber doch ein paar Unklarheiten - insbesondere wenn man Windows Authentication benutzt.

Fehlermeldung "Login failed for 'IIS AppPool\ASP.NET v4.0”

Diese oder eine ähnliche Fehlermeldung ist in der Standardkonfiguration meistens recht frustrierend.

Es gibt drei Lösungswege:

  • In der Web.config von Integrated Security z.B. auf SQL Auth umstellen.
  • Die ApplicationPool Identity umstellen (aber auf was, wenn das auch nicht geht ;) )
  • Im SQL Server die Berechtigungen richten...

Wir entscheiden uns für Nr. 3, weil auch bei den anderen beiden Optionen muss man früher oder später die Berechtigungen editieren.

SQL Server Berechtigungen ändern

image

Der Punkt "Security” - "Logins” ist der erste Einstiegspunkt. Dort muss erst mal der User muss dem SQL Server bekannt gemacht werden.

Hier gibt es eine kleine Tücke: Die "IIS AppPool” Benutzer findet man dummerweise nicht so einfach...

 

 

 

 

 

 

Selbst in der Auflistung aller Accounts, werden die IIS AppPool User nicht auftauchen...

image

Davon aber nicht irritieren lassen - entweder man macht Copy & Paste aus der Fehlermeldung oder man tippt den User des AppPools manuell rein.

IIS AppPool Identies: Aufgebaut nach Schema "IIS AppPool\WEBSITE” bzw. "IIS AppPool\ASP.NET v4.0”

Wenn man eine eigene Websites anlegt, legt der IIS automatisch einen neuen Application Pool samt einer Identity mit der Bildungsregel oben an. Dieser User muss natürlich a) dem SQL Server als Login bekannt gemacht werden und b) bei der jeweiligen Datenbank entsprechen berechtigt werden.

So hat es jedenfalls bei mir immer geklappt.


Written by Robert Muehsig

Software Developer - from Saxony, Germany - working on primedocs.io. Microsoft MVP & Web Geek.
Other Projects: KnowYourStack.com | ExpensiveMeeting | EinKofferVollerReisen.de