wo finde ich den Benutzer in diesem IIS-Fehler „Anmeldung für Benutzer ‚IIS APPOOL\Web2‘ fehlgeschlagen“

wo finde ich den Benutzer in diesem IIS-Fehler „Anmeldung für Benutzer ‚IIS APPOOL\Web2‘ fehlgeschlagen“

Ich stoße auf den folgenden Fehler:

Cannot open database "testbase" requested by the login. The login failed.
Login failed for user 'IIS APPPOOL\Web2'.

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.Data.SqlClient.SqlException: Cannot open database "testbase" requested by the login. The login failed.
Login failed for user 'IIS APPPOOL\Web2'.

Wo kann ich diesem Benutzer also die Web2-Berechtigung erteilen? (Übrigens hat der Server keinen solchen Benutzer Web2, aber es gibt einen Ordner namens Web2im Ordner wwwroot.)

Ich suche nach Antworten, aber alles ist wie folgt fehlgeschlagen:

[1] Fügen Sie den Benutzer IUSRzum Ordner hinzu und erteilen Sie ihm Leseberechtigung.

[2]http://www.codekicks.com/2008/11/cannot-open-database-northwind.html

[3]http://blog.sqlauthority.com/2009/08/20/sql-server-fix-error-cannot-open-database-requested-by-the-login-the-login-failed-login-failed-for-user-nt-authoritynetwork-service/

Antwort1

Sie müssen Ihrem SQL Server einen Benutzer mit dem Benutzernamen "IIS APPPOOL\Web2" hinzufügen und diesem Benutzer Zugriff auf die Datenbank gewähren. Beachten Sie, dass Sienichtdiesen Benutzernamen in der Suche sehen, aber Siekönntesehen Sie, wie es sich in Unterstreichung ändert, wenn Sie auf „Namen überprüfen“ klicken.

Abgesehen von der Verwaltung der Berechtigungen des App-Pools existiert der Benutzer auf der Maschine nicht wirklich.

Alternativ können Sie den Anwendungspool so einrichten, dass er als anderer Benutzer ausgeführt wird.

Weitere Informationen finden Sie unterhttp://blogs.iis.net/webdevelopertips/archive/2009/10/02/tip-98-wussten Sie, dass die Standard-Anwendungspoolidentität in IIS 7-5-Windows 7 von „networkservice“ in „apppoolidentity“ geändert wurde?Undhttp://learn.iis.net/page.aspx/624/application-pool-identities/


Hier ist ein Beispiel für die Liste der SQL Server-Anmeldungen:

SQL Server-Benutzer

Hier ist ein Beispiel für die Anmeldeliste einer Datenbank:

Datenbankbenutzer

Hier sind die Details des Datenbankbenutzers: (Beachten Sie, dass beide Felder den gleichen Namen enthalten. Das zweite Feld muss mit einem Anmeldenamen aus der SQL Server-Anmeldeliste übereinstimmen.)

Datenbankbenutzerdetails


Sie können auch versuchen, Code anstelle der GUI zu verwenden:

USE [master]
GO
CREATE LOGIN [IIS APPPOOL\Web2] FROM WINDOWS WITH DEFAULT_DATABASE=[testbase]
GO

USE [testbase]
GO
CREATE USER [IIS APPPOOL\Web2] FOR LOGIN [IIS APPPOOL\Web2]
GO
EXEC sp_addrolemember N'db_owner', N'IIS APPPOOL\Web2'
GO

Ich habe Eigentümerberechtigungen zugewiesen, aber Ihre Anwendung kann möglicherweise mit niedrigeren Berechtigungen auskommen. Es wird normalerweise als gute Praxis angesehen, die niedrigstmöglichen Berechtigungen zu erteilen.

verwandte Informationen