Udostępnij za pośrednictwem


Zmiana hasła dla wygasłego hasła kończy się niepowodzeniem w scenariuszu grupy roboczej

Ten artykuł pomaga naprawić błąd występujący podczas przetwarzania zmiany hasła dla użytkownika, w którym hasło wygasło lub ustawiono zmianę przy następnym logowaniu.

Oryginalny numer KB: 2879424

Symptomy

Masz serwer w strefie DMZ, który nie jest członkiem domeny. W przypadku administracji masz szereg użytkowników lokalnych, którzy są administratorami.

Po dodaniu nowego użytkownika na serwerze do administrowania należy ustawić początkowe hasło i ustawić "Użytkownik musi zmienić hasło przy następnym logowaniu". Użytkownik loguje się do serwera za pośrednictwem usług pulpitu zdalnego. Użytkownik jest monitowany o zmianę hasła, a po jego wprowadzeniu użytkownik otrzymuje komunikat o błędzie "Za mało miejsca do magazynowania jest dostępna do przetworzenia tego polecenia":

Zrzut ekranu przedstawiający komunikat o błędzie, który nie jest wystarczający do przetworzenia tego polecenia.

Jeśli na serwerze usług pulpitu zdalnego włączono równoważenie obciążenia sieciowego, próba zalogowania się na serwerze zakończy się niepowodzeniem z wygasłym hasłem z wyświetlonym błędem:

[Tytuł okna]
Podłączanie pulpitu zdalnego[zawartość]

Wystąpił błąd uwierzytelniania.
Nie można skontaktować się z urzędem zabezpieczeń lokalnych

Komputer zdalny: <nazwa komputera>
Przyczyną może być wygaśnięcie hasła.
Jeśli hasło wygasło, zaktualizuj je.
Aby uzyskać pomoc, skontaktuj się z administratorem lub zespołem pomocy technicznej.

[OK]

Okno dialogowe błędu wygląda następująco:

Zrzut ekranu przedstawiający okno Podłączanie pulpitu zdalnego, w którym jest wyświetlany komunikat o błędzie z włączoną usługą NLA.

Przyczyna

Podczas przetwarzania zmiany hasła dla użytkownika, którego hasło wygasło lub ustawiono zmianę przy następnym logowaniu, winlogon używa tokenu anonimowego do przetwarzania żądania zmiany hasła.

Okno dialogowe zmiany hasła umożliwia również zmianę haseł na komputerach zdalnych, więc wywołania interfejsów API używają interfejsów remotable za pośrednictwem wywołań RPC przez nazwane potoki za pośrednictwem SMB. W tej sekwencji protokołu środowisko uruchomieniowe RPC odczytuje ustawienie zasad "Server2003NegotiateDisable" z klucza HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Rpc.

Kończy się to niepowodzeniem w kontekście tokenu anonimowego, ponieważ domyślne uprawnienia zezwalają tylko uwierzytelnieni użytkownicy, administratorzy i system lokalny na odczytywanie klucza.

Po włączeniu równoważenia obciążenia sieciowego żądanie sesji użytkownika nie jest weryfikowane i w związku z tym kończy się niepowodzeniem.

Rozwiązanie

Podejścia do uniknięcia tego problemu są następujące:

  1. Zdalne zmienianie hasła. Należy pamiętać, że obecnie użytkownik w kontekście, w którym uruchamiasz zdalną zmianę hasła, musi mieć możliwość zalogowania się na serwerze docelowym przy użyciu poświadczeń domyślnych (lub już połączonych przy użyciu protokołu SMB z serwerem w momencie zmiany hasła).
  2. Zmień uprawnienia klucza HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Rpc , aby zezwolić anonimowym na odczytywanie klucza. Jeśli klucz nie istnieje, możesz go utworzyć, a następnie dodać uprawnienia do odczytu dla konta anonimowego.

Uwaga 16.

W przypadku podejścia 2 próba odzyskania po błędzie może się zdarzyć, że usługa zasad grupy usuwa klucze i tworzy je ponownie przy użyciu uprawnień domyślnych. W takim przypadku musisz ponownie zastosować uprawnienia.

Możesz zautomatyzować ustawianie uprawnień dotyczących używania zasad zabezpieczeń rejestru, gdy maszyna jest członkiem domeny. W przypadku maszyn grupy roboczej można zaimportować ten tekst jako plik rpc-pol.inf:

---------------------------  
[Unicode]  
Unicode=yes  
[Version]  
signature="$CHICAGO$"  
Revision=1  
[Registry Keys]  
"MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\rpc",0,"D:PAR(A;CIIO;KA;;;CO)(A;CI;KA;;;SY)(A;CI;KA;;;BA)(A;CI;KR;;;S-1-5-7)(A;CI;KR;;;BU)"  
------------------------------

Można go zastosować przy użyciu:

secedit /configure /db C:\Windows\security\database\rpc-pol.sdb/cfg rpc-pol.inf /log rpc-pol.log Zwróć uwagę, że klucz musi istnieć, aby to się powiodło.

Więcej informacji

Funkcje zmiany haseł grupy roboczej lub maszyny członkowskiej zdalnego muszą uwzględniać szereg wymagań dotyczących zgodności. Scenariusz jest obecnie bardzo tematem borderline.

W przypadku sesji usług pulpitu zdalnego zabezpieczonego za pomocą usługi NLA nie zezwala na rozpoczęcie sesji zdalnej z wygasłym hasłem. Jeśli chcesz użyć równoważenia obciążenia sieciowego, musisz zdalnie zmienić hasło z góry w sesji uwierzytelnionej przy użyciu innego użytkownika.