POPRAWKA: Program ASP.NET nie działa z domyślnym kontem ASPNET na kontrolerze domeny

Tłumaczenia artykułów Tłumaczenia artykułów
Numer ID artykułu: 315158 - Zobacz jakich produktów dotyczą zawarte w tym artykule porady.
Rozwiń wszystko | Zwiń wszystko

Symptomy

Po zainstalowaniu narzędzi Microsoft Visual Studio .NET lub Microsoft .NET Framework na kontrolerze domeny lub na zapasowym kontrolerze domeny próba uruchomienia programu ASP.NET powoduje wyświetlenie przez przeglądarkę następującego komunikat o błędzie:
Server Application Unavailable

The web application you are attempting to access on this web server is currently unavailable.

Please hit the "Refresh" button in your web browser to retry your request. (Serwer aplikacji jest niedostępny. Aplikacja sieci Web, do której usiłujesz uzyskać dostęp na tym serwerze sieci Web, jest aktualnie niedostępna. Kliknij przycisk „Odśwież” w przeglądarce sieci Web, aby ponowić swoje żądanie.)
Ponadto w dzienniku zdarzeń systemowych aplikacji jest rejestrowane następujące zdarzenie:
aspnet_wp.exe could not be launched because the username and/or password supplied in the processModel section of the config file are invalid. (aspnet_wp.exe nie może zostać uruchomiony, ponieważ nazwa użytkownika i/lub hasło dostarczone przez sekcję processModel pliku konfiguracji są niepoprawne.)
aspnet_wp.exe could not be started. (Program aspnet_wp.exe nie może zostać uruchomiony.)
HRESULT for the failure: (HRESULT dla błędu:) 80004005
Dotyczy to Internetowych usług informacyjnych (IIS) w wersji 5.0 lub nowszych.

Przyczyna

Domyślnie program ASP.NET uruchamia proces podrzędny (Aspnet_wp.exe) na słabym koncie (lokalne konto komputera o nazwie ASPNET), aby zagwarantować bezpieczniejsze środowisko. Na kontrolerze domeny lub na zapasowym kontrolerze domeny wszystkie konta użytkowników to konta domeny, które nie są lokalnymi kontami komputera. Program Aspnet_wp.exe nie może więc zostać uruchomiony, ponieważ nie ma lokalnego konta o nazwie „nazwalokalnegokomputera\ASPNET” . Aby dostarczyć poprawne konto użytkownika na kontrolerze domeny, należy jawnie określić konto w sekcji <processModel> w pliku Machine.config lub należy użyć konta SYSTEM.

Uwaga: Jeżeli próba debugowania (kliknięcie przycisku Start) nastąpi zanim strona zostanie przejrzana, może wystąpić identyczny problem.

Rozwiązanie

W celu obejścia tego problemu należy zastosować jedną z następujących metod:
  • Utwórz słabe konto mające odpowiednie uprawnienia, a następnie skonfiguruj sekcję <processModel> pliku Machine.config, aby użyć tego konta.
  • Nadaj atrybutowi userName wartość SYSTEM w sekcji <processModel> pliku Machine.config.
  • Skonfiguruj sekcję <processModel> pliku Machine.config do używania konta administratora.
Uwaga: Zezwolenie programowi ASP.NET na działanie jako konto SYSTEM lub konto administratora ma poważne konsekwencje ze względu na bezpieczeństwo. Jeżeli użyje się dowolnego z tych dwóch obejść problemu, kod uruchomiony w procesie Aspnet_wp.exe będzie miał dostęp do kontrolera domeny i ustawień domeny. Pliki wykonywalne uruchomione z procesu Aspnet_wp.exe działają w tym samym kontekście i także mają dostęp do kontrolera domeny.

Dlatego firma Microsoft zaleca stosowanie pierwszej metody obejścia tego problemu. Aby użyć pierwszej metody obejścia problemu, wykonaj następujące kroki:
  1. Utwórz na komputerze konto użytkownika o nazwie ASPUSER, a następnie dodaj je do grupy Użytkownicy.

    Uwaga: Można także użyć konta ASPNET utworzonego przez system .NET Framework, jeśli zostanie zmienione hasło tego konta. Należy zapamiętać hasło tego konta, ponieważ dodaje się je do sekcji <processModel> w późniejszym etapie tej procedury.
  2. Nadaj kontu ASPUSER lub ASPNET prawa użytkownika Logowanie w trybie wsadowym. Upewnij się, czy zmiana jest widoczna w ustawieniach Zasad zabezpieczeń lokalnych.

    Uwaga: Aby nadać temu kontu prawa użytkownika Logowanie w trybie wsadowym, może się okazać konieczne nadanie praw użytkownika w każdej z następujących zasad zabezpieczeń (Panel sterowania/Narzędzia administracyjne):

    • Zasady zabezpieczeń kontrolera domeny
    • Zasady zabezpieczeń domeny
    • Zasady zabezpieczeń lokalnych

    Uwaga: Aby zmiany odniosły skutek, może być konieczne ponowne uruchomienie serwera.
  3. Upewnij się, że konto ASPUSER lub ASPNET ma prawa dostępu do wszystkich niezbędnych katalogów i plików, aby uruchomić proces Aspnet_wp.exe i obsługiwać strony ASP.NET. Aby uzyskać dodatkowe informacje dotyczące uprawnień, które należy przydzielić temu kontu, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
    317012 Tożsamość procesu i żądania w programie ASP.NET
  4. Otwórz plik Machine.config. Ścieżka do pliku jest następująca: %Systemroot%\Microsoft.NET\Framework\v1.0.3705\CONFIG.
  5. W sekcji <processModel> pliku Machine.config zmień atrybuty userName oraz password na nazwę i hasło konta utworzonego w kroku 1. Na przykład:
    userName="DomainName\ASPUSER" password="ASPUSERpassword"
  6. Zapisz zmiany w pliku Machine.config.

Stan

Firma Microsoft potwierdziła, że jest to usterka występująca w produktach firmy Microsoft wymienionych w sekcji „Informacje zawarte w tym artykule dotyczą” . Ta usterka została usunięta w programie ASP.NET (dołączonym do systemu .NET Framework) 1.1.

Materiały referencyjne

Aby uzyskać więcej informacji dotyczących zabezpieczeń systemu ASP.NET, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
306590 Omówienie zabezpieczeń programu ASP.NET
Aby uzyskać więcej informacji, kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
316989 Podczas tworzenia zaufanego połączenia danych z programu ASP.NET do programu SQL Server wyświetlany jest następujący komunikat o błędzie: „Login failed for user: NazwaKonta”
329290 Jak używać narzędzia programu ASP.NET do szyfrowania poświadczeń i ciągów połączenia dotyczących stanu sesji
317012 Tożsamość procesu i żądania w programie ASP.NET

Właściwości

Numer ID artykułu: 315158 - Ostatnia weryfikacja: 4 lutego 2008 - Weryfikacja: 5.4
Informacje zawarte w tym artykule dotyczą:
  • Microsoft ASP.NET 1.0
  • Microsoft Internet Information Services 5.0
  • Microsoft Mobile Internet Toolkit 1.0
Słowa kluczowe: 
kbproductlink kbfix kbbug kbconfig kbhttpruntime kbreadme kbsecurity KB315158
Zastrzeżenie dotyczące artykułów z bazy wiedzy o produktach wycofanych
Ten artykuł dotyczy produktów, dla których firma Microsoft nie oferuje już pomocy technicznej. Dlatego jest on oferowany w obecnej wersji i nie będzie już aktualizowany.

Przekaż opinię

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com