2014-02-14 6 views
5

Ich versuche, eine ASP NET App Zugriff auf eine Datenbank geben (Dies sind Test nur nicht Produktion).Erhalten "Login fehlgeschlagen für Benutzer IIS APPPOOL DefaultAppPool" egal was ich mache

Es ist das erste Mal, dass ich es in diesem Netzwerk versuchen, und ich habe es nicht mit VS2012, SQL Server 2012 Express, Windows 7 vor

Was ich getan habe getan:

  • I mein Sql Server 2012 Express aktualisiert seit was VS2012 zum ersten Mal installiert ist eine Version, die den Zugriff von IIS
  • nicht erlaubt Ich habe festgestellt, dass ich SQL Server 2012 Express akzeptieren musste, um Remote-Verbindungen zu akzeptieren, dann folgte ich einem Ich guter Blog here
  • In SSME 2012 gefunden, habe ich ein neues Login für alle Datenbanken NT AUTHORITY \ Network (ich es durchsucht und gefunden „Servicio de rot“, die für NETZWERKDIENST steht, so ist es tatsächlich NT AUTHORITY \ ist Servicio de rot)
  • I dbo als Standardschema für dieses Login gesetzt
  • Unter Login Eigenschaften in Benutzer Mappings, ich meine Datenbank geprüft (die ich genannt MiniNorthwind) und dann überprüft db_datareader und db_datawriter in Datenbankrolle Mitgliedschaft für MiniNorthwind
  • Im Internet Information Services Manager überprüfte ich, dass die DefaultAppPool Identität war Application (Es ist die Standardeinstellung war)

Aber ich immer noch einen Fehler erhalten, dass Anmeldung für den Benutzer IIS AppPool \ DefaultAppPool, wenn ich Ändern Sie die DefaultAppPool-Identität zu NetworkService, dann ändert sich der Fehler in Anmeldung fehlgeschlagen für Benutzer NT AUTHORITY \ Servicio de Rot

Ich weiß nicht, was ich sonst tun soll. Bitte, brauche Hilfe hier.

Rafael

+0

Meine Verbindungszeichenfolge ist auf integrierte Sicherheit eingestellt, und ich möchte es so behalten. Ich möchte auch den Deffault-App-Pool nutzen, denke ich, dass es möglich ist. – Rafael

+0

Ich mache alles in einem Laptop mit einem Netzwerk verbunden, es ist mit Win7 Ultimate x64 installiert – Rafael

Antwort

3

im IIS-Manager gesetzt DefaultAppPool Identität als Networkservice. Obwohl es funktioniert, sollten Sie versuchen, es mit AppPoolIdentity arbeiten zu lassen, da es der Windows 7 Versuch ist, es sicherer zu machen

0

Ändern Sie Ihre Verbindungszeichenfolge.

Zum Beispiel:

//< add name="CS" connectionString="server=.;database=JackDB;user id=sa;password=ya;"> 

Dies löst den Fehler.

4

Anwendungspools -> Ihr Anwendungspool, der in der Anwendung verwendet wird -> klicken Sie darauf und dann auf "Erweiterte Einstellungen" im Panel. Suchen Sie nach der Eigenschaft "Identity" und ändern Sie sie in "localSystem".

0

Sie können die ApplicationPoolIdentity von IIS7 -> Anwendungspools -> Erweiterte Einstellungen ändern.

Unter ApplicationPoolIdentity finden Sie lokales System.Dadurch wird Ihre Anwendung unter NT AUTHORITY\SYSTEM ausgeführt. Dies ist standardmäßig eine vorhandene Anmeldung für die Datenbank.

Für mehr Informationen Blick auf diesen Link: https://stackoverflow.com/a/8853386/1676736

0

In meinem Fall musste ich meine ändern connectionString aus:

<add name="DatabaseName" connectionString="Data Source=(LocalDb)\MSSQLLocalDB;Initial Catalog=HrAndPayroll;Integrated Security=True" providerName="System.Data.SqlClient" /> 

zu:

<add name="DatabaseName" connectionString="Data Source=(LocalDb)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\Database.mdf;Initial Catalog=HrAndPayroll;Integrated Security=True" providerName="System.Data.SqlClient" /> 

Nachdem ich im Einsatz meiner Projekt, meine connectionString wurde modifiziert und damit entfernen AttachDbFilename=|DataDirectory|\Database.mdf, so musste ich den Link meiner Daten geben Basis explizit in der connectionString.