0

Ich versuche, VS 2008 t eine Website auf einem virtuellen auf meinem Computer zu veröffentlichen. Die Website läuft in VS2008 problemlos während des Debuggens, aber wenn ich sie veröffentliche, erhalte ich den folgenden Fehler.XML Deserialization Permissions Fehler

Zugriff auf den Pfad 'C: \ dummy.xml' ist verweigert. Beschreibung: Eine nicht behandelte Ausnahme trat während der Ausführung der aktuellen Webanforderung auf. Bitte überprüfen Sie die Stack-Trace für weitere Informationen über den Fehler und wo es stammt aus dem Code.

Ausnahmedetails: System.UnauthorizedAccessException: Zugriff auf den Pfad 'C: \ dummy.xml' ist verweigert.

ASP.NET ist nicht berechtigt, auf die angeforderte Ressource zuzugreifen . Berücksichtigen Sie Gewähren von Zugriffsrechten für die Ressource für die ASP.NET-Anforderungsidentität. ASP.NET hat eine Basis Prozessidentität (typischerweise {MACHINE} \ ASPNET auf IIS 5 oder Netzwerkdienst auf IIS 6), die wird verwendet, wenn die Anwendung nicht impersonating ist. Wenn die Anwendung imitiert über ist, wird die Identität der anonyme Benutzer (in der Regel IUSR_MACHINENAME) oder die authentifizierte Anfrage Benutzer sein.

zu gewähren ASP.NET Zugriff auf eine Datei, rechten Maustaste auf die Datei im Explorer, wählen Sie „Eigenschaften“ und wählen Sie die Registerkarte Sicherheit. Klicken Sie auf "Hinzufügen", um den entsprechenden Benutzer oder die Gruppe hinzuzufügen. Markieren Sie das ASP.NET-Konto, und überprüfen Sie die Felder für den gewünschten Zugriff.

Ich deserialisiere eine XML-Datei in eine Klasse, die von xsd.exe erstellt wurde. Die Datei und das Verzeichnis haben die gleichen Berechtigungen und ich kann von einem Webbrowser zur XML-Datei gelangen. Das Dienstkonto, das zum Ausführen/Zugriff auf die Website (Verzeichnissicherheitseinstellungen in IIS) verwendet wird, verfügt über vollständige Steuerberechtigungen für den Ordner und die XML-Datei.

Ich bin mit Server 2003 R2 mit IIS 6.

Irgendwelche Gedanken darüber, wie man diesen Fehler korrigieren?

Antwort

2

Legen Sie einen filemon (http://technet.microsoft.com/en-us/sysinternals/bb896642.aspx) fest, um 'C: \ dummy.xml' zu überwachen. Wenn Sie die Fehlermeldung erhalten, überprüfen Sie, welcher Windows-Benutzer versucht, auf die Datei zuzugreifen.

+0

Das hat wie ein Charme funktioniert. Es stellt sich heraus, dass der IIS-Arbeitsprozess (IIS_WPG) versuchte, die Datei mit Schreibzugriff zu öffnen, und hatte nur Lesezugriff. – CodeMonkey1313