Ich versuche, mit der Verwendung von IIS zu beginnen. Ich habe im IIS-Manager eine neue Site erstellt, sie einem Ordner in meinem Dateisystem zugeordnet und dem Ordner index.html hinzugefügt. Ich habe den Port für diese Site auf 85 gesetzt. Wenn ich versuche, darauf zuzugreifen http://localhost:85/index.html
, wird die folgende Fehlermeldung angezeigt:
401.3 - nicht autorisiert - Sie haben aufgrund der ACL-Konfiguration (Access Control List) oder der Verschlüsselungseinstellungen für diese Ressource auf dem Webserver keine Berechtigung zum Anzeigen dieses Verzeichnisses oder dieser Seite.
Ich gab allen im Ordner Lesezugriff und versuchte es erneut. Ich könnte dann auf die Seite zugreifen.
Ich habe dann die Eigenschaften meines Ordners mit denen von wwwroot verglichen. Ich habe festgestellt, dass wwwroot Lesezugriff auf IIS_IUSRS hatte ... Als ich dasselbe in meinem Ordner tat und es erneut versuchte, wurde der obige Fehler erneut angezeigt. Ich habe überprüft, ob der anonyme Zugriff standardmäßig aktiviert ist, erhalte jedoch weiterhin diesen Fehler.
Warum passiert das? Was ist der richtige Weg, um das Problem zu lösen?
Hier ist, was für mich funktioniert hat.
Gehen Sie wie folgt vor, um den Server anonym zu machen, damit er von der Identität des App-Pools erbt.
quelle
TL; DR;
In den meisten Fällen reicht es aus , Zugriff auf die folgenden Konten (eins | beide) zu gewähren :
mit Zugriffsrechten :
Das ist es!
Lesen Sie weiter für eine detailliertere Erklärung ...
Gewähren Sie Zugriff auf die ACL des Webanwendungsordners, je nachdem, was im obigen Bild ausgewählt ist:
IUSR
(in meinem Fall) +IIS AppPool\DefaultAppPool
IIS AppPool\DefaultAppPool
nurfürIIS AppPool\DefaultAppPool
Konto ist das Standard-AppPool-Konto für neue IIS-Webanwendungen. Wenn Sie ein benutzerdefiniertes Konto festgelegt haben, verwenden Sie das benutzerdefinierte Konto.Geben Sie den Konten die folgenden Berechtigungen:
Read & Execute
List folder contents
Read
quelle
Da Sie es mit statischen Inhalten zu tun haben ...
Wird in dem Ordner, der als Stammverzeichnis Ihrer Website fungiert, "Benutzer" in der Liste angezeigt, wenn Sie mit der rechten Maustaste auf> Eigenschaften> Sicherheit klicken? Wenn Sie nicht auf "Hinzufügen ..." klicken und es eingeben, klicken Sie auf "Übernehmen", wenn Sie fertig sind.
quelle
Versuchen Sie diese Lösung:
/server/38222/iis-7-5-windows-7-http-error-401-3-unauthorized
Überprüfen Sie auch, ob der Benutzer, der den IIS AppPool ausführt, Lesezugriff auf diesen Ordner / diese Datei hat.
Schau dir das an:
http://www.iis.net/learn/manage/configuring-security/application-pool-identities
Schauen Sie sich auch Folgendes an:
http://www.iis.net/learn/get-started/planning-for-security/understanding-built-in-user-and-group-accounts-in-iis
quelle
Nur für den Fall, dass jemand anderes darauf stößt. Ich habe alle diese Schritte behoben und es stellte sich heraus, dass ich einige Dateien von einem MAC entpackt habe. Microsoft hat die Dateien automatisch ohne Benachrichtigung verschlüsselt. Nachdem ich stundenlang versucht hatte, Ordnerberechtigungen festzulegen, ging ich hinein und sah, dass die Dateinamen grün waren, was bedeutet, dass die Dateien verschlüsselt waren und IIS den gleichen Fehler auslöst, selbst wenn die Ordnerberechtigungen korrekt sind.
quelle
Fügen Sie für Routen eine web.config hinzu
quelle
Ein weiteres Problem, das beim Empfang eines nicht autorisierten Anbieters auftreten kann, betrifft die Anbieter, die in der Authentifizierungseinstellung von IIS verwendet werden. In meinem Fall trat dieses Problem auf, wenn ich den Windows-Authentifizierungsanbieter auf "Verhandeln" stellte. Nachdem ich die Option "NTLM" ausgewählt hatte, wurde der Zugriff gewährt.
Weitere Informationen zu Authentifizierungsanbietern
https://docs.microsoft.com/en-us/iis/configuration/system.webserver/security/authentication/windowsauthentication/providers/
quelle
Bitte aktivieren Sie die folgenden Elemente in Windows 2012 R2
quelle
Wenn Sie mit der Anwendungspoolauthentifizierung (anstelle von IUSR) arbeiten, die Sie sollten, ist diese Liste von Überprüfungen durch Jean Sun die beste, die ich finden kann, um 401 Fehler in IIS zu behandeln:
Öffnen Sie den IIS-Manager und navigieren Sie zu Ihrer Website oder Ihrem Anwendungsordner, in dem die Site bereitgestellt wird.
Führen Sie den folgenden Befehl aus:
Beispielsweise:
Insbesondere die Schritte 5. und 6. werden oft übersehen und im Web selten erwähnt.
quelle