fragen stichworte

IIS7-Ordnerberechtigungen

Ich baue einen grundlegenden WCF-Dienst, den ich jetzt in IIS7 unter Windows Server 2008 R2 hosten möchte.

Ich habe den Dienst als Anwendung unter der Standardwebsite hinzugefügt, aber wenn ich versuche, die Anwendung auszuführen, erhalte ich die folgende Fehlermeldung:

HTTP Error 500.19 - Internal Server Error The requested page cannot be accessed because the related configuration data for the page is invalid.

Config Error - Cannot read configuration file due to insufficient permissions

Der einzige Weg, wie ich diesen Dienst zum Laufen bringen kann, ist, wenn ich mich beim Hinzufügen des Dienstes als Server-Administrator "verbinde". Die Option "Anwendungsbenutzer (Pass-Through-Authentifizierung)" scheint nicht zu funktionieren.

Könnte mir jemand helfen, ich habe gerade mit IIS7 angefangen und habe keine Ahnung, was ich tun soll ... Danke

antworten

Es ist ein Berechtigungsproblem, und es ist ein zweifaches Problem, das Sie lösen müssen (abhängig davon, was Ihre Ziele sind).

  1. Sie müssen bestimmen, ob diese Website nicht anonym sein soll oder ob Sie ein Passwort haben möchten. 1a. Wenn Sie eine Authentifizierung wünschen, müssen Sie feststellen, ob sie integriert oder grundlegend sein soll. Wenn Sie Basic verwenden, benötigen Sie ein SSL-Zertifikat. Wenn Sie mit integriert sind, beachten Sie, dass NTLM standardmäßig auf einen einzelnen Hop für die Authentifizierung beschränkt ist. Wenn Sie also den Benutzer anmelden müssen, um auf eine Remote-Dateifreigabe oder einen SQL-Server zugreifen zu können (Authentifizierung als sich selbst und nicht als App-Pool), benötigen Sie Kerberos (mit einer eigenen Komplexitätsebene).

  2. Sie müssen sicherstellen, dass Ihre NTFS-Berechtigungen für das Verzeichnis eingerichtet sind, auf das IIS verweist.

Gehen Sie für die von Ihnen eingerichtete Site zu Authentifizierung und wählen Sie die Aktion Bearbeiten für anonyme Authentifizierung. Bei der Identität handelt es sich entweder um einen bestimmten Benutzer oder um die Identität des Anwendungspools. Bei der Einrichtung wird angegeben, welcher Benutzer dem Dateisystem Zugriff auf das Verzeichnis gewährt, in dem Sie Ihren WCF-Dienst gehostet haben.

Nun, Sie können zunächst prüfen, welche Berechtigungen Ihr Verzeichnis und Ihre Dateien haben, und dann die erforderlichen Elemente hinzufügen. Bei einer Standardinstallation von 2008 r2 hat die Benutzergruppe Lese- und Listenberechtigungen unter inetpub. Dies funktioniert auf jeden Fall, obwohl es wahrscheinlich nicht so sicher ist.

Sie könnten versuchen:

IIS-> Sites -> (DefaultWebSite oder Ihre Site) -> Feature-Ansicht-> Doppelklicken Sie auf Fehlerseiten-> Feature-Einstellungen bearbeiten -> wählen Sie Detaillierte Fehler -> Drücken Sie OK.

ansonsten gibt es hier einen Beitrag zum Debuggen von WCF-Diensten: Detaillierte Fehler funktionieren nicht für den WCF-Dienst in IIS

IIS sollte Ihnen eine gute Fehlermeldung darüber geben, wo das Problem liegt. Wenn Sie den Fehler immer noch nicht finden können, lesen Sie das Blog Fehlerbehebung in HTTP 500.19