Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Błędy KDC_ERR_S_PRINCIPAL_UNKNOWN i KDC_ERR_PRINCIPAL_NOT_UNIQUE wskazują, że klient żąda dostępu do usługi, której Kerberos nie może zidentyfikować. Ten rodzaj błędu wskazuje co najmniej jeden z następujących problemów:
- Konto usługi nie jest poprawnie skonfigurowane.
- Usługa nie korzysta z konta usługi skonfigurowanego dla niej.
- Dla usługi skonfigurowano więcej niż jedno konto.
- Klient nie złożył poprawnie zapytania o usługę.
Każda usługa ma nazwę główną usługi (SPN), która identyfikuje ją klientom i innym usługom. Nazwa SPN jest atrybutem konta usług Domenowych Active Directory (AD DS), którego używa usługa. Usługa może działać w kontekście niestandardowego konta usługi lub w kontekście wbudowanego konta, takiego jak konto komputera lokalnego. Usługa może również działać w kontekście zabezpieczeń powiązanym z kontem komputera, takim jak system lokalny lub usługa sieciowa.
Sposób, w jaki konfigurowane są nazwy SPN (Nazwa Użytkownika Usługi), różni się w zależności od typu konta używanego przez Twoją usługę.
- Niestandardowe konto usługi musi mieć jawną nazwę SPN dla każdej usługi korzystającej z konta.
- Konto komputera może mieć jawne nazwy SPN skonfigurowane dla usług, które go używają. Jednak typowe klasy usług są mapowane automatycznie na SPN HOSTA. Nazwa SPN hosta jest generowana automatycznie dla każdego konta komputera. W takich przypadkach niektóre usługi mogą nie mieć własnej nazwy SPN skonfigurowanej na koncie komputera.
Ważne
- Jeśli usługa nie używa konta komputera i nazwy SPN hosta, nazwy SPN muszą być unikatowe w lesie usług AD DS. W środowisku z wieloma lasami nazwa SPN musi być unikatowa we wszystkich skojarzonych lasach.
- Jedna nazwa SPN może być skojarzona tylko z jednym kontem. Typową przyczyną problemów z nazwą SPN jest skonfigurowanie usługi do korzystania z konta niestandardowego, mimo że nazwa SPN jest skojarzona zarówno z kontem niestandardowym, jak i kontem komputera.
Zbierz dane śladowe i zidentyfikuj problematyczny SPN
Jeśli jeszcze nie zebrałeś(-aś) danych dotyczących śledzenia problemu, zrób to teraz. Aby uzyskać więcej informacji, zobacz Wskazówki dotyczące rozwiązywania problemów z uwierzytelnianiem Kerberos: 3. Zbieranie danych śledzenia i biletów. Sprawdź dane śledzenia, aby znaleźć nazwę SPN żądaną przez klienta.
Sprawdź nazwę SPN używaną przez konto usługi
Te procedury różnią się nieznacznie w zależności od tego, czy usługa używa konta niestandardowego, czy konta komputera. Poniższa tabela zawiera podsumowanie różnicy.
| Usługa używa konta niestandardowego | Usługa używa konta komputera |
|---|---|
| Żądana nazwa SPN musi być zgodna z nazwą SPN konta. Nazwa SPN musi być unikatowa w lesie. |
Żądana nazwa SPN może być zgodna z jedną z nazw SPN konta. Jednak typowe usługi (takie jak usługa internetowa) zwykle używają automatycznej nazwy SPN hosta zamiast unikatowej nazwy SPN. Jeśli konto ma nazwę SPN specyficzną dla usługi, nazwa SPN musi być unikatowa w lesie. |
Uzyskaj listę SPN przypisanych do konta usługi. W tym celu otwórz okno wiersza polecenia administracyjnego na kontrolerze domeny, a następnie uruchom następujące polecenie:
setspn -L <Name>Uwaga / Notatka
- W tym poleceniu <Nazwa> reprezentuje nazwę komputera, który uruchamia usługę, albo niestandardowe konto, z którego usługa korzysta.
- W środowisku z wieloma domenami użyj <formatu Domain\Name> , aby określić domenę konta.
Wyszukaj wszystkie konta korzystające z żądanej nazwy SPN. To wyszukiwanie identyfikuje wszelkie zduplikowane nazwy SPN lub nazwy SPN przypisane do nieprawidłowego konta.
Uwaga / Notatka
Aby wykonać tę procedurę, musisz mieć co najmniej uprawnienia administratora przedsiębiorstwa.
Aby określić konto lub konta skojarzone z nazwą SPN, otwórz okno wiersza polecenia administracyjnego, a następnie uruchom jedno z następujących poleceń.
Pojedynczy las Wiele zaufanych lasów setspn -Q <SPN>setspn -X <SPN>Uwaga / Notatka
- W tym poleceniu <SPN> oznacza SPN, którego szukasz.
- Wyszukiwanie duplikatów, zwłaszcza w całym lesie, może zająć dużo czasu i dużo pamięci.
Aby uzyskać więcej informacji na temat setspn polecenia i dostępnych opcji, zobacz setspn.
Przekonfiguruj SPN zgodnie z potrzebami
Następne kroki zależą od wyniku danych śledzenia, setspn zapytań i typu konta używanego przez usługę.
Mogą wystąpić dowolne z następujących problemów.
| Konto niestandardowe | Konto komputera |
|---|---|
| Co najmniej jedno konto inne niż konto usługi ma nazwę SPN. | Co najmniej jedno konto inne niż konto komputera ma nazwę SPN. |
| Konto niestandardowe nie ma nazwy SPN. | Konto komputera powinno mieć nazwę SPN, ale nie. 1 |
| Konto niestandardowe ma błędną nazwę SPN lub nazwę, która nie jest zgodna z żądaną przez klienta SPN. 2 | Konto komputera ma niepoprawną nazwę SPN lub nazwę SPN, która nie jest zgodna z nazwą SPN żądaną przez klienta. 2 |
1 Aby uzyskać listę usług, które mogą używać nazwy SPN hosta konta komputera, zobacz setspn. Jeśli Twoja usługa nie jest jedną z tych typowych usług, musisz skonfigurować nazwę SPN dla usługi na koncie komputera.
2 Aby uzyskać informacje o żądaniu klienta, zobacz dane śledzenia sieci.
Aby naprawić konfigurację SPN, użyj następujących metod:
Jeśli konto usługi jest poprawnie skonfigurowane, ale klient zażądał nieprawidłowej nazwy SPN, zobacz Naprawianie niespójnej nazwy SPN.
Jeśli poprawne konto usługi ma nazwę SPN, ale nazwa SPN nie jest poprawna, usuń niepoprawną nazwę SPN, a następnie dodaj poprawną nazwę SPN. Aby uzyskać szczegółowe informacje, zobacz Usuwanie nazwy SPN z konta i Dodawanie nazwy SPN do konta usługi.
Jeśli nazwa SPN jest przypisana do dowolnego konta innego niż prawidłowe konto usługi (konto niestandardowe lub konto komputera), usuń nazwę SPN z tych kont. Zobacz Usuwanie SPN z konta.
Jeśli usługa używa konta niestandardowego, ale konto niestandardowe nie ma przypisanego SPN, dodaj SPN. Aby uzyskać szczegółowe informacje, zobacz Dodawanie głównej nazwy usługi do konta usługi.
Jeśli usługa używa konta komputera, ale nie jest jedną z typowych usług opisanych w tym artykule, dodaj nazwę SPN do konta komputera.
Usuń SPN z konta
Aby usunąć nazwę SPN z konta, uruchom następujące polecenie w wierszu polecenia administracyjnego:
setspn -D <SPN> <AccountName>
Uwaga / Notatka
W tym poleceniu <SPN> reprezentuje SPN, który chcesz usunąć. <AccountName> reprezentuje konto (lub jedno z kont), z którego chcesz usunąć nazwę SPN.
Dodaj SPN do konta usługi
Aby dodać nazwę SPN do konta, uruchom następujące polecenie w wierszu polecenia administracyjnego:
setspn -S \<SPN> \<AccountName>
Uwaga / Notatka
W tym poleceniu <SPN> reprezentuje SPN, który chcesz dodać. <AccountName> reprezentuje konto (lub jedno z kont), do którego chcesz dodać nazwę SPN.
Napraw niespójny SPN
Ustal, która wersja głównej nazwy usługi jest poprawna: albo ta, której zażądał klient, lub skonfigurowana na koncie usługi.
Jeśli klient żąda nieprawidłowej nazwy SPN, sprawdź informacje używane przez klienta do utworzenia nazwy SPN dla żądania i upewnij się, że informacje źródłowe są poprawne. DNS jest typowym źródłem tych informacji. Inni klienci (zwłaszcza klienci inni niż przeglądarka lub klienci niestandardowi) mogą używać innych źródeł oprócz systemu DNS.
Jeśli konto usługi używa nieprawidłowej nazwy SPN, usuń nazwę SPN z konta usługi, a następnie dodaj poprawną nazwę SPN.
Więcej informacji
Nazwa SPN jest używana w formacie <ServiceClass>/<Host>:<Port>/,<ServiceName> i zawiera następujące składniki:
- <Klasa ServiceClass> (wymagana) reprezentuje klasę usługi.
- <Host> (wymagany) reprezentuje nazwę komputera, na który jest uruchomiona usługa.
- <Port> (opcjonalnie) reprezentuje numer portu używany przez usługę.
- <ServiceName> (opcjonalnie) reprezentuje nazwę usługi.
Aby uzyskać więcej informacji na temat formatowania nazw SPN i kiedy używać opcjonalnych parametrów, zobacz Formaty nazw dla unikatowych nazw SPN.