Udostępnij za pośrednictwem


Rozwiązywanie problemów z usługami Active Directory Federation Services za pomocą zdarzeń i logowania

Usługi Active Directory Federation Services (AD FS) udostępniają dwa podstawowe dzienniki, których można użyć do rozwiązywania problemów. They are:

  • Dziennik administratora.
  • The Tracelog.

Wyświetlanie dziennika administratora

Dziennik administratora zawiera ogólne informacje o problemach, które występują i są domyślnie włączone. Aby wyświetlić dziennik administratora:

  1. Open Event Viewer.

  2. Rozwiń Dziennik aplikacji i usług.

  3. Expand AD FS.

  4. Select Admin.

    Zrzut ekranu przedstawiający Podgląd zdarzeń z wywołaną opcją Administrator.

Use Tracelog

Dziennik śledzenia to miejsce rejestrowania szczegółowych komunikatów i jest to najbardziej przydatny dziennik podczas rozwiązywania problemów. Ponieważ wiele informacji tracelog można wygenerować w krótkim czasie, co może mieć wpływ na wydajność systemu, dzienniki są domyślnie wyłączone.

Aby włączyć i wyświetlić dziennik śledzenia

  1. Open Event Viewer and expand Applications and Services Log.

  2. Kliknij prawym przyciskiem myszy Dziennik aplikacji i usług, a następnie wybierz Wyświetl. Następnie wybierz pozycję Pokaż dzienniki analityczne i debugowania. W tym okienku jest wyświetlanych więcej węzłów.

    Zrzut ekranu podglądu zdarzeń pokazujący, że użytkownik kliknął prawym przyciskiem myszy dziennik aplikacji i usług, a następnie wybrał pozycję Widok z wybraną opcją Pokaż dzienniki analityczne i debugowania.

  3. Rozwiń Śledzenie AD FS.

  4. Right-click on Debug, and select Enable Log.

    Zrzut ekranu podglądu zdarzeń pokazujący, że użytkownik kliknął prawym przyciskiem myszy pozycję Debuguj z wywołaną opcją Włącz dziennik.

Informacje o audycie zdarzeń dla AD FS na Windows Server 2016

Domyślnie usługi AD FS w systemie Windows Server 2016 mają włączony podstawowy poziom inspekcji. W przypadku podstawowej inspekcji administratorzy widzą pięć lub mniej zdarzeń dla pojedynczego żądania. Te informacje oznaczają znaczny spadek liczby zdarzeń, na które muszą zwrócić uwagę administratorzy, aby zobaczyć pojedyncze żądanie. Poziom inspekcji można podnieść lub obniżyć przy użyciu polecenia cmdlet programu PowerShell:

Set-AdfsProperties -AuditLevel

W poniższej tabeli opisano dostępne poziomy inspekcji.

Audit Level PowerShell syntax Description
None Set-AdfsProperties -AuditLevel Brak Inspekcja jest wyłączona i nie są rejestrowane żadne zdarzenia.
Basic (Default) Set-AdfsProperties -AuditLevel Podstawowy Nie więcej niż pięć zdarzeń jest rejestrowanych dla pojedynczego żądania.
Verbose Set-AdfsProperties -AuditLevel przegadane Wszystkie zdarzenia są rejestrowane. Ten poziom rejestruje znaczną ilość informacji na żądanie.

Aby wyświetlić bieżący poziom inspekcji, możesz użyć polecenia cmdlet programu PowerShell: Get-AdfsProperties.

Zrzut ekranu przedstawiający okno programu PowerShell z wyświetlonymi wynikami polecenia cmdlet Get-AdfsProperties ze wskazaną właściwością Poziom audytu.

Poziom inspekcji można podnieść lub obniżyć przy użyciu polecenia cmdlet programu PowerShell: Set-AdfsProperties -AuditLevel.

Zrzut ekranu okna programu PowerShell przedstawiający polecenie cmdlet Set-AdfsProperties -AuditLevel Verbose wpisane w wierszu polecenia.

Typy zdarzeń

Zdarzenia AD FS mogą być różnego rodzaju, w zależności od różnych typów żądań przetwarzanych przez AD FS. Z każdym typem zdarzenia są skojarzone określone dane. Typ zdarzeń może być rozróżniany między żądaniami logowania i żądaniami systemowym. Żądania logowania mogą być żądaniami tokenów, a żądania systemowe mogą być wywołaniami serwera, w tym pobieraniem informacji o konfiguracji.

W poniższej tabeli opisano podstawowe typy zdarzeń.

Event Type Event ID Description
Powodzenie weryfikacji świeżych poświadczeń 1202 Żądanie, w którym usługa federacyjna weryfikuje nowe poświadczenia pomyślnie. To zdarzenie obejmuje WS-Trust, WS-Federation, SAML-P (pierwszy etap generowania logowania jednokrotnego) i punkty końcowe autoryzacji OAuth.
Błąd sprawdzania poprawności nowego poświadczenia 1203 Żądanie, w którym sprawdzanie poprawności nowych poświadczeń nie powiodło się w usłudze federacyjnej. To zdarzenie obejmuje WS-Trust, WS-Fed, SAML-P (pierwszy etap generowania SSO) i punkty końcowe autoryzacji OAuth.
Sukces tokenu aplikacji 1200 Żądanie, w którym usługa federacyjna pomyślnie wystawia token zabezpieczający. W przypadku WS-Federation i SAML-P zdarzenie jest odnotowane, gdy żądanie zostanie przetworzone przy użyciu artefaktu SSO (takiego jak cookie SSO).
Niepowodzenie tokenu aplikacji 1201 Żądanie, w którym wystawianie tokenu zabezpieczającego nie powiodło się w usłudze federacyjnej. W przypadku WS-Federation i SAML-P to zdarzenie jest rejestrowane, gdy żądanie zostało przetworzone przy użyciu artefaktu logowania jednokrotnego (np. pliku cookie logowania jednokrotnego).
Żądanie zmiany hasła powiodło się 1204 Transakcja, w której usługa federacyjna pomyślnie przetwarza żądanie zmiany hasła.
Błąd żądania zmiany hasła 1205 Transakcja, w której usługa federacyjna nie może przetworzyć żądania zmiany hasła.
Wylogowano pomyślnie 1206 Opisuje udane żądanie wylogowania.
Niepowodzenie wylogowania 1207 Opisuje nieudane żądanie wylogowania.

Security auditing

Inspekcja zabezpieczeń konta usługi AD FS może czasami pomóc w śledzeniu problemów z aktualizacjami haseł, rejestrowaniem żądań/odpowiedzi, nagłówkami zawartości żądania i wynikami rejestracji urządzeń. Inspekcja konta usługi AD FS jest domyślnie wyłączona.

Włączanie inspekcji zabezpieczeń

  1. Select Start. Then go to Programs>Administrative Tools, and then choose Local Security Policy.

  2. Przejdź do folderu Ustawienia zabezpieczeń\Zasady lokalne\Zarządzanie prawami użytkownika , a następnie kliknij dwukrotnie pozycję Generuj inspekcje zabezpieczeń.

  3. Na karcie Ustawianie zabezpieczeń lokalnych sprawdź, czy jest wymienione konto usługi AD FS. If it isn't present, select Add User or Group, and add it to the list. Then select OK.

  4. Otwórz wiersz polecenia z podwyższonym poziomem uprawnień i uruchom następujące polecenie, aby włączyć inspekcję: auditpol.exe /set /subcategory:"Application Generated" /failure:enable /success:enable

  5. Zamknij przystawkę Zasady zabezpieczeń lokalnych, a następnie otwórz przystawkę Zarządzanie usługami AD FS.

  6. To open the AD FS Management snap-in, select Start. Go to Programs>Administrative Tools, and then select AD FS Management.

  7. In the Actions pane, select Edit Federation Service Properties.

  8. W oknie dialogowym Właściwości usługi federacyjnej wybierz kartę Zdarzenia.

  9. Select the Success audits and Failure audits check boxes.

  10. Select OK.

    Zrzut ekranu przedstawiający kartę Zdarzenia okna dialogowego Właściwości usługi federacyjnej, z zaznaczonymi opcjami kontroli pomyślności i kontroli niepowodzeń.

Note

Poprzednie instrukcje są używane tylko wtedy, gdy usługi AD FS znajdują się na autonomicznym serwerze członkowskim. Jeśli usługi AD FS są uruchomione na kontrolerze domeny, zamiast lokalnych zasad zabezpieczeń, użyj domyślnych zasad kontrolera domeny znajdujących się w zarządzania zasadami grupy/lasu/domen/kontrolerów domeny. Select edit and go to Computer Configuration\Policies\Windows Settings\Security Settings\Local Policies\User Rights Management.

Komunikaty programu Windows Communication Foundation i programu Windows Identity Foundation

Oprócz rejestrowania śledzenia, czasami może być konieczne wyświetlenie wiadomości Windows Communication Foundation (WCF) i Windows Identity Foundation (WIF), aby rozwiązać problem. You can view these messages by modifying the Microsoft.IdentityServer.ServiceHost.Exe.Config file on the AD FS server.

Ten plik znajduje się w <%system głównym%>\Windows\ADFS i ma format XML. Odpowiednie fragmenty pliku są pokazane w następującym przykładzie:

<!-- To enable WIF tracing, change the following switchValue to the desired trace level - Verbose, Information, Warning, Error, Critical -->

<source name="Microsoft.IdentityModel" switchValue="Off"> … </source>

<!-- To enable WCF tracing, change the following switchValue to the desired trace level - Verbose, Information, Warning, Error, Critical -->

<source name="System.ServiceModel" switchValue="Off" > … </source>

Po zastosowaniu tych zmian zapisz konfigurację i uruchom ponownie usługę AD FS. Po włączeniu tych śladów poprzez ustawienie odpowiednich przełączników zostaną one wyświetlone w dzienniku śledzenia AD FS w Podglądzie zdarzeń Windows.

Correlating Events

Jedną z najtrudniejszych rzeczy do rozwiązania jest problem z dostępem, który generuje wiele błędów lub zdarzeń debugowania.

Aby rozwiązać ten temat, usługi AD FS korelują wszystkie zdarzenia zarejestrowane w Podglądzie zdarzeń zarówno w dzienniku administratora, jak i w dziennikach debugowania. Każdy z tych dzienników odpowiada określonemu żądaniu przy użyciu unikatowego globalnie unikatowego identyfikatora (GUID) nazywanego identyfikatorem działania. Usługi ADFS generują ten identyfikator podczas przedstawiania żądania wystawienia tokenu aplikacji internetowej dla aplikacji korzystających z pasywnego profilu osoby żądającej. Usługi AD FS generują również identyfikator, gdy wysyłają żądania bezpośrednio do dostawcy oświadczeń dla aplikacji przy użyciu WS-Trust.

Zrzut ekranu przedstawiający kartę Szczegóły okna dialogowego Właściwości zdarzenia z wywołaną wartością ActivityID.

Ten identyfikator działania pozostaje taki sam przez cały czas trwania żądania i jest rejestrowany jako część każdego zdarzenia zarejestrowanego w Podglądzie zdarzeń dla tego żądania. This means:

  • Filtrowanie lub przeszukiwanie Podglądu zdarzeń przy użyciu tego identyfikatora działania może pomóc w śledzeniu wszystkich powiązanych zdarzeń odpowiadających żądaniu tokenu.
  • Ten sam identyfikator działania jest rejestrowany na różnych maszynach, co umożliwia rozwiązywanie problemów z żądaniem użytkownika na wielu maszynach, takich jak federacyjny serwer proxy (FSP).
  • Identyfikator aktywności jest również wyświetlany w przeglądarce użytkownika, jeśli żądanie usług AD FS zakończy się niepowodzeniem w jakikolwiek sposób, co umożliwia użytkownikowi przekazanie tego identyfikatora wsparciu technicznemu lub pomocy IT.

Zrzut ekranu przedstawiający kartę Szczegóły okna dialogowego Właściwości zdarzenia z wywołaną wartością identyfikatora żądania klienta.

Aby ułatwić proces rozwiązywania problemów, usługa AD FS rejestruje również zdarzenie identyfikatora wywołującego za każdym razem, gdy proces wystawiania tokenu kończy się niepowodzeniem na serwerze AD FS. To zdarzenie zawiera typ oświadczenia i wartość jednego z następujących typów oświadczeń, zakładając, że te informacje zostały przekazane do usługi federacyjnej w ramach żądania tokenu:

  • https://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountnameh
  • http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier
  • http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upnh
  • https://schemas.microsoft.com/ws/2008/06/identity/claims/upn
  • http://schemas.xmlsoap.org/claims/UPN
  • http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddressh
  • https://schemas.microsoft.com/ws/2008/06/identity/claims/emailaddress
  • http://schemas.xmlsoap.org/claims/EmailAddress
  • http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name
  • https://schemas.microsoft.com/ws/2008/06/identity/claims/name
  • http://schemas.xmlsoap.org/ws/2005/05/identity/claims/privatepersonalidentifier

Zdarzenie ID dzwoniącego rejestruje również identyfikator działania, aby umożliwić używanie tego identyfikatora działania do filtrowania lub przeszukiwania dzienników zdarzeń dotyczących konkretnego żądania.

Next Steps