Uwierzytelnianie systemu Windows wciąż wymagało podania nazwy użytkownika / hasła


13

Wdrażam moją aplikację internetową iis6. Ciągle otrzymywałem to okienko „zabezpieczenia systemu Windows”, aby wprowadzić nazwę użytkownika i hasło. Wyłączyłem już anonimowego użytkownika i sprawdziłem zintegrowane uwierzytelnianie systemu Windows, ale po prostu nie będzie ono „automatycznie” logowane.

Co powinienem zrobić?

Sprawdziłem ustawienia zabezpieczeń - lokalna strefa intranetowa: „Zaloguj się jako automatyczne logowanie tylko w strefie intranetowej”. Również mój serwer produkcyjny jest samodzielnym serwerem, dlatego może nie posiadać konta AD i poświadczeń.


Z jakiej przeglądarki korzystasz?
Oskar Kjellin

zarówno IE, jak i Firefox nie będą działać.

powinieneś potencjalnie usunąć tagi dla Visual Studio 2010 oraz C # i asp.net i dodać tagi dla Windows-Server-2003 i iis6. Potencjalnie przenosząc pytanie na błąd serwera, administrator byłby znacznie lepiej przystosowany do rozwiązania tego pytania.
Anicho

Odpowiedzi:


8

W przypadku przeglądarki Internet Explorer może być konieczne dodanie adresu serwera do lokalnej strefy intranetowej. IE często ma trudności z samodzielnym wykryciem lokalnych serwerów intranetowych, więc może być konieczne ręczne dodanie witryny do tej listy. Możesz to zrobić ręcznie w ustawieniach IE lub możesz użyć zasad grupy do zarządzania listą serwerów intranetowych w domenie AD. Możesz wyświetlić strefę wybraną przez IE dla Twojej witryny z menu Plik / Właściwości.

W przypadku przeglądarki Firefox musisz poinformować FF o przesłaniu poświadczeń sieciowych do tej witryny. w about: config musisz dodać strony do ustawień

network.automatic-ntlm-auth.trusted-uris

i

network.negotiate-auth.trusted-uris

.


hej, ponieważ nie jestem administratorem, nie mogę dodać witryny do strefy. jest szary! tak, próbowałem to zrobić na moim lokalnym komputerze programistycznym i działa. Ale co powinienem zrobić na serwerze produkcyjnym?

Nic na serwerze. To problem po stronie klienta. Musisz poprosić administratora klienta o dodanie nazwy serwera do lokalnej strefy intranetowej lub zmianę nazwy DNS serwera, aby pasował do ustawień już w tej strefie (na przykład, jeśli strefa jest skonfigurowana dla * .firma. com, a twój serwer to randonname.differentdns.com, upewnij się, że jest dostępny poprzez newname.company.com)
TristanK

3

http://support.microsoft.com/?id=258063 Wszystko, co musisz wiedzieć, daj mi znać, jak to działa.

Chciałbym przepisać ten cudowny artykuł i przypisać mu uznanie, ale to oszustwo. Sam wpadłem w ręce tego wydania, ale ten artykuł był ratunkiem dla życia. Trzymam go w moich zakładkach w ramach IIS lol.

Aktualizacja:

Wyjaśnijmy to od razu. Przypuszczam, że serwer Windows Server 2003/2003 R2 lub urządzenie XP z IIS6.

Zanim przejdziemy głębiej, sprawdź następujące informacje, upewnij się, że masz skonfigurowaną nową witrynę w iis6, wskazując na folder w C:\inetpub\wwwroot\, jeśli nie ma tam wskazania C:\MyOwnFolderlub C:\Program Files\SomeFolderjest w porządku, musisz upewnić się, że foldery mają następujące uprawnienia:

Inetpub\wwwroot (or C:\MyOwnFolder) Administrators        Full control 
Inetpub\wwwroot (or C:\MyOwnFolder) System                Full control 
Inetpub\wwwroot (or C:\MyOwnFolder) IIS_WPG               Read, execute 
Inetpub\wwwroot (or C:\MyOwnFolder) IUSR_MachineName      Read, execute 
Inetpub\wwwroot (or C:\MyOwnFolder) ASPNET                Read, execute 

Źródło: http://support.microsoft.com/kb/812614

Teraz powinieneś sprawdzić swoje ustawienia IIS.

Jak odinstalować uwierzytelnianie w IIS

  1. Uruchom Menedżera usług IIS lub otwórz przystawkę IIS.

  2. Rozwiń opcję Nazwa_serwera, gdzie nazwa_serwera to nazwa serwera, a następnie rozwiń Witryny sieci Web.

  3. W drzewie konsoli kliknij prawym przyciskiem myszy witrynę sieci Web, katalog wirtualny lub plik, dla którego chcesz skonfigurować uwierzytelnianie, a następnie kliknij polecenie Właściwości.

  4. Kliknij kartę Zabezpieczenia katalogów lub Zabezpieczenia plików (odpowiednio), a następnie w obszarze Anonimowa i kontrola dostępu lub Uwierzytelnianie i kontrola dostępu kliknij Edytuj.

  5. Kliknij, aby odznaczyć wszystkie opcje obok metody uwierzytelnienia lub metody, które chcesz aktualnie sprawdzić, a następnie kliknij OK.

  6. Kliknij, aby zaznaczyć, włączyć anonimowy dostęp

  7. Upewnij się, że nazwa użytkownika jest ustawiona na MACHINENAME \ IUSR_MACHINENAME, oczywiście zastępując MACHINENAME nazwą twojego serwera / maszyny.

  8. IUSR jest wbudowanym kontem, które powinno automatycznie uwierzytelniać się

Źródło: http://support.microsoft.com/kb/324274 (ten artykuł jest przeciwieństwem tego, co właśnie pokazałem ci do zrobienia)

Spróbuj tego wszystkiego, jeśli to nie zadziała. Podam dalsze kroki, jest miliard i jedna rzecz, którą możesz sprawdzić.


przepraszam, jestem trochę zdezorientowany. Ponieważ próbowałem już na wiele sposobów, podczas gdy mój poprzedni projekt był udany. być może jest to spowodowane przez serwer, ponieważ część „Ustawienia zabezpieczeń strefy intranetowej programu Internet Explorer” nie działa zarówno po stronie klienta, jak i serwera, i nie mogłem dodać adresu serwera do przeglądarki klienta, ponieważ nie mieli uprawnień administratora.

@HuatsinYeo Zaktualizowałem swoją odpowiedź.
Anicho

0

Powinieneś sprawdzić uwierzytelnianie plików w systemie Windows. Była grupa uwierzytelnionych użytkowników. Musisz zająć się dwoma uwierzytelnieniami. Uwierzytelnianie IIS i dostęp do systemu plików.


0

Przed uruchomieniem poświadczeń puli aplikacji konto IUSR_nazwa_komputera jest używane do ładowania konfiguracji serwisu WWW. Upewnij się, że konto IUSR_nazwa_komputera (znane również jako konto aspnet) ma dostęp do odczytu do folderu, w którym wdrożono tę aplikację.


Nie, nie jest. Poświadczenia puli aplikacji są pierwszą rzeczą używaną do rozruchu i odczytu konfiguracji puli aplikacji.
TristanK

-1

Cóż, jestem nowy w Dotnet Nie wiem, czy rozwiązanie, które zadziałało dla mnie i powyższe jest takie samo, ale tak czy inaczej, oto co zrobiłem.

Napotkaliśmy również problemy w narzędziu do przesyłania i za każdym razem, gdy użytkownik kliknął przycisk „Prześlij”, wyskakujące okienko wyskakiwało z prośbą o podanie poświadczeń (które nigdy się nie zdarzyły) i ostatecznie doprowadziło do błędu „401 nieprawidłowych poświadczeń”.

Musisz tylko przejść do odpowiedniego folderu / strony w menedżerze IISNET na serwerze i kliknąć prawym przyciskiem myszy i sprawdzić bezpieczeństwo. Dodaj użytkowników / grupy, które powinny mieć dostęp do przesyłania, i daj im pełne uprawnienia, jeśli jeszcze nie są obecne.

Opublikuj tę zmianę, aby móc uzyskać dostęp do pliku / przesłać go bez monitowania o podanie poświadczeń.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.