Hostowanie ASP.NET w IIS7 daje odmowę dostępu?

123

Mam skonfigurowaną aplikację w moim IIS7, która korzysta z .NET Framework 4.0 (uruchamiana przez NetworkService), ale podczas przeglądania witryny otrzymuję to:

Odmowa dostępu.
Opis: wystąpił błąd podczas uzyskiwania dostępu do zasobów wymaganych do obsługi tego żądania. Możesz nie mieć uprawnień do przeglądania żądanych zasobów.
Komunikat o błędzie 401.3: Nie masz uprawnień do przeglądania tego katalogu lub strony przy użyciu podanych poświadczeń (odmowa dostępu z powodu list kontroli dostępu). Poproś administratora serwera WWW o przyznanie Ci dostępu do *

Próbowałem przyznać NetworkService pełne uprawnienia do folderu, w którym znajduje się witryna sieci Web (ten, na który wskazuje aplikacja sieci Web w usługach IIS), ale nadal otrzymuję odmowę dostępu?

Czemu?

Banshee
źródło
Czy mógłbyś rzucić okiem na moją odpowiedź na temat ASP MVC w IIS 7 skutkuje: Błąd HTTP 403.14 - Zabroniony .
Murat Yıldız

Odpowiedzi:

271

Dałem dostęp do „IIS_IUser”, ale zamiast tego powinno to być „IUSR” . To rozwiązało problem.

Banshee
źródło
To też był mój problem. To zabawne, ilu jest różnych użytkowników. Masz również IIS_IUSR (lub czy to miałeś na myśli w przypadku IIS_IUser?) I możesz również dodać pulę aplikacji.
reaper_unique
2
Należy to przypiąć do strony głównej, na której rozpowszechniają te usługi IIS!
c00000fd
36
Witryna> Uwierzytelnianie> Uwierzytelnianie anonimowe> Edytuj> Określony użytkownik
Jonas
4
działało jak urok! Dodano uprawnienia do właściwości folderu Eksploratora Windows, zakładka bezpieczeństwa.
Filipe Borges
3
Udzieliłem dostępu zarówno IIS_IUser, jak i IUSR, pełną kontrolę i zadziałało.
Ronald Nsabiyera
167

Dla mnie nic nie działało, z wyjątkiem następujących, które rozwiązały problem: otwórz IIS, wybierz witrynę, otwórz Uwierzytelnianie (w sekcji IIS), kliknij prawym przyciskiem Uwierzytelnianie anonimowe i wybierz Edytuj, wybierz Tożsamość puli aplikacji.

Graham Laight
źródło
1
Miły. Pracował dla mnie na Win Server 2012 IIS 8, dla ASP Classic Website.
Ben_Coding,
to pomogło ... ale musisz zresetować cały serwer, aby ustawienia zostały zastosowane. Próbowałem resetować strona po stronie i to nie zadziałało.
sensei
Musiałem to zrobić dla nowej aplikacji w istniejącej witrynie sieci Web, która była przeznaczona dla innego środowiska uruchomieniowego .NET, które dawało mi 401 w katalogu głównym dokumentu (dostęp do stron * .aspx działał bezpośrednio, podczas gdy katalog główny nie działał).
Matt Borja,
Dzięki. Pracował za pierwszym razem.
GutierrezDev
Działa idealnie, jeśli Twój AppPool działa jako USŁUGA SIECIOWA
Serge Voloshenko
12

Miałem ten sam problem, włączyłem "Anonimowe uwierzytelnianie", ale nadal nie działało. Więc też WŁĄCZAŁEM "Uwierzytelnianie formularzy". Wtedy to działało bez żadnych problemów.

Enkosi
źródło
dla mnie, gdy włączyłem uwierzytelnianie systemu Windows w usługach IIS, teraz działa dobrze. dzięki
Singaravelan
4

System operacyjny: Windows 7 i IIS 7

Jeśli nadal masz odmowę pozwolenia po dodaniu IUSR i USŁUGI SIECIOWEJ. Dodaj również IIS_WPG. Dodanie tego ostatniego użytkownika rozwiązało mój problem.

Dla osób, które nie mogą znaleźć tych użytkowników: kiedy próbujesz dodać użytkownika w zabezpieczeniach folderu (właściwości folderu), kliknij „Zaawansowane” w oknie „Wybierz użytkowników lub grupy”. Zmień lokalizację na nazwę komputera, a następnie kliknij „Znajdź teraz”. Znajdziesz tych użytkowników na poniższej liście.

Volkan
źródło
Dziękuję, to zadziałało! Użyłem IIS_IUSRS na serwerze Windows 2012, ponieważ nie ma tam IIS_WPG.
Roman O
Nie widzę IIS_WPG. Czy to jest coś, co stworzyłeś?
Stealth Rabbi
4

Jeśli korzystasz z uwierzytelniania anonimowego, usługi IIS 7 będą używać konta „IUSR” do uzyskiwania dostępu do katalogu (chyba że ustawisz je na używanie tożsamości puli aplikacji. Jeśli nie nadałeś IUSR wystarczających uprawnień do folderów i plików w Twojej witrynie, otrzymasz ten błąd

James McKeon
źródło
3

U mnie w systemie Windows 7 zaczęło działać dopiero po przyznaniu uprawnień „Odczyt i wykonanie”, „Wyświetl zawartość folderu”, „Odczyt” folderu witryny dla obu użytkowników

  • IUSR
  • USŁUGA SIECIOWA

Uprawnienia IUSR Uprawnienia do usługi NETWORK SERVICE

Vitalii
źródło
to rozwiązanie zadziałało i nic innego nie zadziałało! Dzięki.
Aimal Khan
3

Wypróbowałem większość rozwiązań tutaj, ale bez powodzenia. U mnie zadziałało dodanie „Wszyscy” do uprawnień bezpieczeństwa. Właściwości -> Bezpieczeństwo -> Edycja -> Dodaj -> Wszyscy. Podane wartości domyślne wystarczyły, abym odzyskał dostęp.

W najbliższej przyszłości powinienem prawdopodobnie dowiedzieć się, jakie dane uwierzytelniające są przesyłane do serwera, aby móc nadać odpowiednie uprawnienia. Ale mam nadzieję, że to komuś pomoże!

midoriha_senpai
źródło
2

Sprawdzanie tożsamości puli aplikacji w uwierzytelnianiu anonimowym i włączenie uwierzytelniania za pomocą formularzy rozwiązałoby problem z błędem odmowy dostępu. 😁

ADARSH BIDARI
źródło
1

W ustawieniach uwierzytelniania dla samej aplikacji (w usługach IIS) sprawdź, czy włączono anonimowość.

Matt
źródło
1

Musimy utworzyć nowego użytkownika NazwaKomputera \ IUSR, przechodząc do folderu witryny -> Właściwości ---> Zabezpieczenia ---> Edycja -> Dodaj i daj dostęp do odczytu. To na pewno zadziała.

To rozwiązanie jest przeznaczone dla usług IIS7

Raj Pandey
źródło
1

Chodziłem po tym w kółko i okazało się, że jest to niewłaściwie ustawiona strona domyślna. Mam nadzieję, że pomoże to komuś innemu uniknąć godziny straconego czasu.

Duane Boudreau
źródło
1

W moim przypadku uruchomienie c: \ windows \ Microsoft.Net \ Framework64 \ v4.0.30319 \ aspnet_regiis.exe / i rozwiązało problem z odmową dostępu 403.

Andreas Schneider
źródło
Jesteś prawdziwym MVP! Dziękuję Ci bardzo! Właśnie uratowałem mi więcej bólów głowy tym błędem!
XhensB
1

Po zastanowieniu i wielu próbach i błędach odkryłem, że ten błąd wystąpił, ponieważ część mojego pliku web.config była zaszyfrowana iz jakiegoś powodu klucz nie był już ważny.

Ponowne zaszyfrowanie sekcji konfiguracji rozwiązało problem.

marsze
źródło
0

Było to spowodowane problemem bezpieczeństwa katalogu WWWRoot.

Prostym rozwiązaniem jest skopiowanie folderu aplikacji na inny dysk, zamiast „C: \ Inetpub \ wwwroot”, a następnie utworzenie katalogu wirtualnego dla nowej ścieżki. Otóż ​​to.

Madhu S Reddy
źródło
0

Jeśli użytkownik IUSR jest już określony w uwierzytelnianiu, a problem nadal występuje, może to oznaczać, że lista katalogów nie jest włączona. Koniecznie sprawdź to. Tak było w przypadku mnie.

Visokoo
źródło
0

Oto, co mi się przytrafiło:

Get- Postjest ok. Pracuje dobrze.

Kiedy próbuję użyć Optionsczasownika, serwer zwraca taki błąd.

403

Następnie uważaj na urlScan

Dodaję czasownik OPCJE do pliku konfiguracyjnego urlscan .ini, wszystko działa dobrze.

Aby sprawdzić, czy program urlscan jest zainstalowany, czy nie, otwórz swojego menedżera iis, a ISAPI FILTERSna liście powinno pojawić się okno skanowania adresu URL.

toha
źródło
0

Miałem też do czynienia z tym samym problemem, wszystko było normalne, wszystkie prawa zostały nadane użytkownikowi i do folderu. Po wielu badaniach odkryłem, że wwwroot (folder z kodem źródłowym) został udostępniony innemu użytkownikowi. Przestałem się dzielić i to działało jak urok.

Pradyumn Agrawal
źródło