Wie kann ich einen lokalen Benutzer profile für die anonymen Benutzer von einer ASP.Net MVC-Anwendung unter IIS 7?
Ich habe experimentiert mit ASP.Net MVC, und haben auf ein problem stoßen, das ist wahrscheinlich nicht speziell MVC-bezogene. Aber ich Schaffe es nicht, die Authentifizierung in der Standard-MVC-Anwendung (die durch den Assistenten erstellt, wenn Sie erstellen ein neues MVC Projekt) funktioniert unter IIS 7 auf Windows 7.
Wenn ich unter Visual Studio-Umgebung, es funktioniert, aber wenn ich schalten Sie die Einstellungen für die Ausführung unter IIS anstelle, bekomme ich die folgende exception versuchen, Einreichen der Anmeldung oder Eintragung:
Fehler beim generieren einer benutzerinstanz von
SQL Server aufgrund eines Fehlers in
abrufen des Benutzers lokalen
Anwendungsdaten-Pfad. Bitte machen
sicher, dass der Benutzer ein lokales Benutzerprofil
auf dem computer ist. Die Verbindung wird
geschlossen werden.
Ich glaube, dass dies ist, weil die website läuft unter meinem eigenen Konto in Visual Studio, aber unter dem IUSR-Konto in der IIS. Google-Suche auf die Ausnahme Nachricht wenig hilfreich bisher.
So, kann man erstellen Sie einen lokalen Benutzer-Profil für das IUSR-Konto? Wenn ja, wie? Gibt es etwas anderes ich tun sollte, um die SQLExpress-engine zu arbeiten, die unter das anonyme Konto im IIS 7?
Ich habe auch versucht, konfigurieren der IIS-website auf mein Konto zu benutzen, aber da ist mein Rechner zu Hause, mein Konto nicht über ein Passwort, und es scheint, dass der IIS nicht lassen, eine website so konfiguriert werden, verwenden Sie ein Konto, ohne ein Passwort. Oder, da dies meine erste Erfahrung mit IIS 7 und Konfiguration fühlt sich sehr anders als das, IIS 5/6, ich bin nur fehlt die richtige Einstellung, lass mich konfigurieren Sie das Konto für den anonymen Zugriff verwendet.
EDIT: Einige zusätzliche Informationen. Wenn ich leere den App_Data Ordner und versuchen Sie es erneut von IIS, SQLExpress versuche zum erstellen meiner Datenbank und schlägt fehl, aber die Ausnahme Nachricht hat weitere Informationen mit den folgenden Vorschlägen.
SQLExpress Datenbank-Datei automatische Erstellung
Fehler:In der Verbindungszeichenfolge ein
lokalen Sql Server Express-Instanz
mit Hilfe eines Datenbank-Position innerhalb der
Anwendungen App_Data-Verzeichnis. Die
Anbieter versucht, automatisch
erstellen Sie die Anwendung Dienste
Datenbank, da die Anbieter
festgestellt, dass die Datenbank nicht
vorhanden. Die folgende Konfiguration
Anforderungen sind erforderlich, um
erfolgreich überprüfen Sie für die Existenz der
die Anwendungs-services, Datenbank-und
automatisches erstellen der Anwendung
services-Datenbank:
- Wenn die Anwendungen App_Data-Verzeichnis nicht bereits vorhanden ist, die
web-server-Konto muss über lese-und
schreiben Sie den Zugang zu den Anwendungen
- Verzeichnis. Dies ist notwendig, weil
der web-server-Konto
erstellen Sie automatisch die App_Data
Verzeichnis, wenn es nicht bereits
vorhanden.- Wenn die Anwendungen App_Data-Verzeichnis bereits existiert, wird die web
server Konto benötigt nur lese-und
schreiben Sie den Zugang zu den Anwendungen
App_Data-Verzeichnis. Dies ist notwendig,
da die web-server-Konto
Versuch zu überprüfen, dass Sql Server
Express-Datenbank bereits vorhanden ist
die Anwendungen App_Data-Verzeichnis.
Widerruf-lese-Zugriff auf die App_Data
Verzeichnis von web-server-Konto
wird verhindert, dass die Anbieter von
korrekt ermitteln, ob der Sql
Server Express-Datenbank bereits
vorhanden ist. Dies wird einen Fehler verursachen, wenn
der Anbieter versucht, zu erstellen eine
duplizieren einer bereits vorhandenen
Datenbank. Schreibzugriff ist erforderlich,
da die web-server-Konten
Anmeldeinformationen, die verwendet werden beim erstellen der
neue Datenbank.- Sql Server Express muss auf dem Computer installiert werden.
- Die Prozess-id für das web-server-Konto muss ein lokaler Benutzer
Profil. Finden Sie in der readme-Dokument für
details über, wie man erstellen Sie einen lokalen Benutzer
Profil für die Maschine und die domain
Konten.
Habe ich ziemlich ausführlich bestätigt, dass die ersten drei Vorschläge sind erfüllt worden. Der vierte scheint die Ursache für meine Probleme, aber ich kann nicht herausfinden, wie das zu tun. Und obwohl der Vorschlag wird behauptet, es ist eine readme-Dokument, das beschreibt, habe ich nicht finden können, das Dokument.
InformationsquelleAutor GBegen | 2009-02-09
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich habe dieses problem auch unter medium trust. Der Prozess, der die Datenbank erstellt erfordert mindestens das Hohe Vertrauen. Sie können dies überprüfen, indem Sie in Ihrem Web.Config für
Wenn es kein Vertrauen in Ihre Web.Config, versuchen Sie es und legen Sie es entweder Voll oder Hoch. Wenn dies nicht funktioniert, gibt es eine Maschine.config in Ihrem IIS, die Sie hätte ändern müssen.
That being said, die beste route, die ich gefunden habe um dieses Problem zu lösen ist, um Sie nur aspnet_regsql.exe zum anlegen der benötigten Tabellen und ändern Sie die Verbindungszeichenfolge, die in Ihrer Website.Config, um ihn direkt betrachten.
Dies löste mein Problem. Stellen Sie sicher, dass Sie das element unter <system.web - >!
InformationsquelleAutor Nick Larsen
Ich gelöst, "Das Verzeichnis 'LocalApplicationData' existiert nicht." Fehler beim ausführen eines SSIS-Pakets durch eine SQL-Auftrag, indem Sie den SQL-SSIS-Dienst und der SQL Server-Agent-Dienst ausgeführt wurden, die unter dem gleichen Konto wie das swql-job wurde eingestellt!
Diese in meinem Fall war eine domain-Konto.
InformationsquelleAutor Nathan
Lösung: DEINSTALLIEREN Sie alle updates, bevor Sie begann das Problem. Ich verbrachte unzählige Stunden - Stunden, die ich nie wieder in meinem Leben - Lesen und befolgen jede Lösung möglich, ohne Erfolg. Ich deinstalliert alle SQL Server-updates und jetzt funktioniert alles einwandfrei.
Ja, die SQL Server ausführen, ohne Sicherheits-updates ist eine ausgezeichnete Idee...
InformationsquelleAutor johnv