2009-03-30 15 views
3

Ich habe eine Website auf einem Windows 2008-Webserver mit IIS7 bereitgestellt. Die Site funktioniert einwandfrei auf einem Windows 2003-Standardserver mit IIS6. Wenn ich im Feld 2008 eine Seite (htm oder aspx) aus einem Ordner mit dem Namen Berichte anfordere, werde ich mit dem Dialogfeld Windows-Authentifizierung aufgefordert.IIS7 Authentifizierungsproblem

Ich habe anonyme Authentifizierung und Formularauthentifizierung auf der Website aktiviert. Ich habe Vollzugsriff-Berechtigungen für das Stammverzeichnis der Site für NETWORK SERVICE und IIS_IUSRS, aber das hat keinen Unterschied gemacht.

Antwort

0

was ist der Authentifizierungsmodus in Ihrer web.config ist, dass zu überprüfen ist nicht in

Windows-
<authentication mode="Windows" /> 

auch sicher sein, integrierte Windows-Authentifizierung deaktivieren in

0

iis Sie könnten versuchen, FileMon von Sysinternals zum Laufen Überprüfen Sie, ob das Dateisystem den "Zugriff verweigert" zurücksendet.

0

Zitat aus einem anderen Forum, das dieses Problem für mich gelöst: „SQL Server Reporting Service einen Ordner namens Report standardmäßig erstellt, wenn Sie Installieren Sie es auf IIS Wenn Sie SQL Server 2008 installieren, muss Reporting Services IIS nicht verwenden und wird versuchen, die URL mit dem HTTP.Sys-Dienst zu reservieren

Ich glaube, das ist die Ursache des Konflikts, den Sie sind Sie können versuchen, die von Reporting Services verwendete URL über den SQL Server Reporting Services-Konfigurations-Manager zu ändern. "

0

Nun zu dem gleichen Thema hier, gestern habe ich meine Anwendung auf Windows Server 2008 mit IIS7 w/MSSQL 2008 auch dort zu implementieren. In der Baumstruktur meiner Website hatte ich einen Ordner mit dem Namen Berichte, in dem sich ein Unterordner befand, und dann die eigentlichen Seiten. Es sah wie folgt aus: "Reports/SalaryReports/SalaryReport.aspx" Das Interessante daran war, dass ich, als ich auf einen Hyperlink klickte, um zu "Reports/SalaryReports/SalaryReport.aspx" zu gelangen, eine Benutzername/Passwort-Eingabeaufforderung von meinem Server erhielt. Dies ist auf dem VS-Entwicklungsserver nicht passiert, als ich die Anwendung auf dem Entwicklungscomputer ausgeführt habe. Also war ich wie hmm? Ich habe mir den Code-Behind in SalaryReport.aspx angeschaut und fand nichts Ungewöhnliches. Also habe ich eine Default.aspx direkt in den Reports-Ordner gelegt (denke vielleicht, dass etwas falsch mit der Authentifizierung war, die zwei Knoten von der Wurzel entfernt, um zu SalaryReport.aspx zu gelangen), aber der Server hat immer noch Benutzername/Passwort angefordert, obwohl es keine gab Sicherheitseinstellungen, die auf diese neue Default.aspx angewendet wurden. Also dachte ich, es muss sein, dass der Ordner "Berichte" heißt, also habe ich ihn in "Reports1" umbenannt und bigno! Alles hat funktioniert! .... Ich werde heute noch weiter in dieser Ausgabe nachsehen, aber es scheint, dass entweder ein IIS 7 HttpModule (nicht einer von mir) versucht, den Ordner "Reports" für sich selbst oder etwas "zu reservieren" sonst ... Ich werde in den SQL Server Reporting Services wie der oben genannten Beitrag ... Wie auch immer, wollte nur teilen :)

+0

Ich hatte genau das gleiche Problem. Ich änderte die Reporting Services-Konfiguration (über das Tool) von Alle nicht zugewiesenen ips zu localhost und Bingo! Es hat alles funktioniert. – Kieron

2

Wie ein vorheriger Beitrag bereits erwähnt, hier sind die detaillierten Schritte, um dies zu beheben :)

Wenn in der Anwendung ein Ordner mit dem Namen "Reports" vorhanden ist und SQL Server Reporting Services auf dem Server installiert sind, befindet sich der virtuelle Reporting Services-Ordner mit dem Namen "Reports" im Konflikt mit der Anwendung "Reports" " Mappe. Um dies zu beheben, öffnen Sie den Reporting Services-Konfigurationsmanager (Start-> Alle Programme-> MS SQL Server-> Konfigurationstools) und ändern Sie das virtuelle Verzeichnis unter der "URL des Berichts-Managers" im Menü auf der linken Seite.

0

Ich bin der Annahme, Sie nicht ein SQL Reporting Services auf demselben Server laufen haben:

1 - Geben Sie Rechte an Benutzer „IUSR“ und dem Benutzer, die Ihre Anwendungspool ausgeführt wird. 2 - Überschreiben Sie Berechtigungen und Besitzrechte für untergeordnete Ordner. 2 - Überprüfen Sie, ob eine Datei web.config in diesem Ordner unterschiedliche Zugriffsregeln definiert.

Verwandte Themen