SQL Server und Windows-Authentifizierung in IIS7

8

Ich versuche, eine ASP.NET-Website unter Vista (IIS7) mit SQL Server und Windows-Authentifizierung zu erhalten. Egal, was ich mache, wenn ich mich mit der Datenbank verbinde, bekomme ich die Ausnahme:

%Vor%

Es spielt keine Rolle, welche Einstellungen ich anwende. Ich kann IIS7 nicht dazu bringen, meine Windows-Zugangsdaten zu übermitteln.

Zusätzliche Details:

  • Sowohl der SQL Server als auch meine lokale Maschine befinden sich auf ActiveDirectory
  •     
  • Vista Enterprise, IIS7
  •     
  • SQL Server 2005
  •     
  • Anonyme Authentifizierung deaktiviert, Windows-Authentifizierung aktiviert
  •     
  • Identitätswechsel an / aus macht keinen Unterschied
  •     
  • Alle Identitäten (NetworkService, LocalSystem, etc) geben das gleiche Ergebnis
  •     
  • Klassische und integrierte Pipelines liefern das gleiche Ergebnis

Hilfe!

    
gerrod 04.12.2009, 14:21
quelle

4 Antworten

7

Der Identitätswechsel an / aus macht bei richtiger Konfiguration den Unterschied. Was Sie wollen, heißt "eingeschränkte Delegation" und Sie müssen IIS und ASP dafür konfigurieren:

Remus Rusanu 04.12.2009, 16:35
quelle
1

Standardmäßig darf der IIS-Server impersonate nicht an den SQL Server verweisen. Es gibt einen MSDN-Artikel zur Konfiguration. Der Konfigurationsprozess ist komplex und fehleranfällig.

Wenn Ihre Produktions-ISS und SQL Server auf verschiedenen Servern ausgeführt werden, benötigen Sie einen Domänenadministrator, um die Identitätsvertrauensstellung zwischen den beiden Servern zu konfigurieren. Dies ist normalerweise ein No-Go in einer großen Organisation.

Zusätzlich dazu, dass der Identitätswechsel nicht von normalen Administratoren bereitgestellt wird, verhindert er auch, dass Benutzer ihre Verbindungen im SQL-Verbindungspool freigeben. Dies führt zu einer sehr deutlichen Leistungseinbuße auch für kleine (5+ Benutzer) Websites.

    
Andomar 04.12.2009 14:34
quelle
0

Haben Sie versucht, ein neues Benutzerkonto für Ihre Anwendung zu erstellen, gewähren Sie dem Sql-Server die entsprechenden Rechte und legen Sie dann fest, dass der Anwendungspool unter diesem neuen Konto ausgeführt wird? Dies ist, was ich normalerweise tue, und es funktioniert. Ich verwende meine Anwendung nicht unter NetworkService, LocalSystem oder anderen integrierten Konten.

    
treaschf 04.12.2009 14:27
quelle
0

Enthält Ihre Verbindungszeichenfolge Integrated Security=SSPI ?

Haben Sie den Kontext von asp.net auch als Domänenbenutzer geändert?

Hier ist ein MSDN-Artikel zu diesem Thema

Ссылка

    
Raj More 04.12.2009 14:36
quelle