401 Fehler nach Freigabe des wwwroot-Ordners in HomeGroup in IIS7, Windows 7

9

Nachdem ich meinen wwwroot-Ordner für den Rest meiner Heimnetzgruppe freigegeben habe, wird auf meiner Website jetzt der folgende Fehler angezeigt:

Serverfehler

401 - Nicht autorisiert: Der Zugriff wird aufgrund ungültiger Anmeldeinformationen verweigert. Sie haben keine Berechtigung, dieses Verzeichnis oder diese Seite mit den von Ihnen angegebenen Anmeldeinformationen anzuzeigen.

Ich vermute, dass die Ordnerberechtigungen beschädigt wurden, als ich den Ordner wwwroot freigegeben habe. Ich habe versucht, die Freigabe des Ordners aufzuheben und IIS7 neu zu starten, erhalte jedoch weiterhin den Fehler. Kennt jemand die Standardberechtigungen, die für den Ordner wwwroot benötigt werden? IIS7 ist mit Standardeinstellungen konfiguriert (dh ich habe keine IIS7-Einstellungen geändert).

Jede Hilfe wird sehr geschätzt.

Schon versucht:

  • IIS7 neu starten
  • Ein- und Ausschalten der anonymen Authentifizierung
  • Aufheben der Freigabe des wwwroot-Ordners
Brian Hasden
quelle
Haben Sie dem ASP.net-Konto die Berechtigung erteilt, auf diesen Ordner zuzugreifen?
Sathyajith Bhat
Die IUSRS-Gruppe hat Zugriff auf den Ordner.
Brian Hasden

Antworten:

12

Um die wwwroot-Berechtigungen zurückzusetzen, ging ich zu einer anderen Box und kopierte alle Einstellungen mit Problemen auf den Webserver.

Führen Sie die folgenden Schritte aus, um zu den Standardberechtigungen für den Ordner "wwwroot" zurückzukehren:

  1. Klicken Sie mit der rechten Maustaste auf den Ordner wwwroot und klicken Sie auf Eigenschaften
  2. Gehen Sie zur Registerkarte Sicherheit und klicken Sie auf die Schaltfläche Erweitert
  3. Klicken Sie auf die Schaltfläche "Berechtigungen ändern ..." und aktivieren Sie das Kontrollkästchen "Vererbbare Berechtigungen vom übergeordneten Objekt dieses Objekts einschließen"
  4. Entfernen Sie alle Berechtigungseinträge, bei denen die Spalte "Geerbt von" den Wert "<nicht geerbt>" hat.
  5. Klicken Sie auf Übernehmen und überprüfen Sie, ob die folgenden 5 Berechtigungseinträge vom Verzeichnis "C: \ inetpub \" geerbt werden:
    • TrustedInstaller - Volle Kontrolle
    • SYSTEM - Volle Kontrolle
    • Administratoren - Volle Kontrolle
    • Benutzer - Lesen und Ausführen
    • CREATOR EIGENTÜMER - Spezial

Sobald diese Berechtigungen überprüft wurden, klicken Sie auf die Schaltfläche Hinzufügen, geben Sie "IIS_IUSRS" als Objektnamen ein und klicken Sie auf OK. Wählen Sie "Ordner durchlaufen / Datei ausführen", "Ordner auflisten / Daten lesen", "Attribute lesen", "Erweiterte Attribute lesen" und "Berechtigungen lesen" aus der Berechtigungsliste und klicken Sie auf "OK".

Der wwwroot-Ordner sollte jetzt auf die mit IIS7 gelieferten Standardberechtigungen zurückgesetzt werden.

Dies behebt den erwähnten Fehler 401 Access Denied, auf den ich gestoßen bin.

Brian Hasden
quelle
Dies funktionierte für mich unter IIS 7.5, obwohl ich mir keine Gedanken über das Hinzufügen von Berechtigungen machen musste, habe ich einfach alle <nicht geerbten> Einträge entfernt.
DigitalDan
7

Ich bin auf dasselbe Problem gestoßen. Anstatt jedoch alle Berechtigungen neu zu erstellen, musste WEBSERVER \ Users mit Leseberechtigungen erneut hinzugefügt werden. Es scheint, dass die Freigabe des Ordners diese möglicherweise entfernt hat.

Jason
quelle
1
Ich hatte das gleiche Problem. Irgendeine Idee, warum es entfernt wird, wenn ein Ordner freigegeben wird?
MrVimes
0

Vielen Dank an alle, die diese Informationen veröffentlicht haben. Ich liebe Microsoft für diesen einen. Für uns wurde dies durch die Freigabe des wwwroot-Verzeichnisses verursacht. Folgendes haben wir getan, um das Problem zu beheben.

  1. Klicken Sie mit der rechten Maustaste auf wwwRoot.
  2. Klicken Sie auf die Registerkarte Sicherheit.
  3. Klicken Sie auf die Schaltfläche Erweitert.
  4. Alle im obigen Beitrag erwähnten Berechtigungen waren vorhanden, aber alle hatten "keine" in der von geerbten Spalte.
  5. Klicken Sie auf Vererbung aktivieren .
  6. Klicken Sie auf Übernehmen .
  7. Fehlermeldung zu "Fehler beim Anwenden der Sicherheit" auf den Ordner aspnet_client. Ich bin mir nicht sicher, was das bedeutet.
  8. Klicken Sie auf Continue.
  9. Warten Sie, bis das System alle Berechtigungen angewendet hat.
  10. Erledigt.
tommo123456
quelle