Przejdź do głównej zawartości
Pomoc techniczna
Zaloguj się przy użyciu konta Microsoft
Zaloguj się lub utwórz konto.
Witaj,
Wybierz inne konto.
Masz wiele kont
Wybierz konto, za pomocą którego chcesz się zalogować.

Kolumna Głos pomocy technicznej dla deweloperów programu IIS

Uwierzytelnianie Kerberos i rozwiązywanie problemów z delegowaniem

Aby dostosować tę kolumnę do swoich potrzeb, zapraszamy Cię do przesyłania pomysłów na interesujące Cię tematy i problemy, które mają być widoczne w przyszłych artykułach z bazy wiedzy Knowledge Base i kolumnach Support Voice. Pomysły i opinie możesz przesłać za pomocą formularza Zapytaj o to. U dołu tej kolumny znajduje się również link do formularza.

Nazywam się <Name> i jestem w grupie Rozpoznawanie problemów krytycznych przez firmę Microsoft Microsoft Internet Information Services (IIS). Pracuję w firmie Microsoft od dziewięciu lat i pracuję w zespole IIS przez wszystkie dziewięć lat. Mam zebrane informacje z wielu lokalizacji na
temat http://msdn.microsoft.com i
http://www.microsoft.com na temat protokołu Kerberos oraz rozwiązywania problemów z delegowaniem.

IIS 6.0

W poniższym oficjalnym dokumencie opisano sposób konfigurowania delegowania w systemie Microsoft Windows Server 2003. Oficjalny dokument zawiera szczegółowe informacje dotyczące równoważenia obciążenia sieciowego, ale zawiera doskonałe szczegóły dotyczące konfigurowania scenariusza delegowanego bez używania funkcji równoważenia obciążenia sieciowego. Aby zapoznać się z tym dokumentem, należy odwiedzić następującą witrynę firmy Microsoft w sieci Web:

http://technet.microsoft.com/en-us/library/cc757299.aspxUwaga Używaj nazw głównych usług HTTP (SPN), zwłaszcza w przypadku używania funkcji równoważenia obciążenia sieciowego.

Innym popularnym problemem protokołu Kerberos była ostatnio potrzeba zezwolenia na używanie tej samej nazwy DNS w wielu pulach aplikacji. Niestety, w przypadku delegowania poświadczeń za pomocą protokołu Kerberos nie można powiązać tej samej nazwy głównej usługi (SPN) z różnymi pulami aplikacji. Nie można tego zrobić ze względu na projekt protokołu Kerberos. Protokół Kerberos wymaga wielu wspólnych sekretów, aby protokół działał poprawnie. Używając tej samej nazwy SPN dla różnych pul aplikacji, eliminujemy jedną z tych wspólnych sekretów. Usługa katalogowa Active Directory nie będzie obsługiwać tej konfiguracji protokołu Kerberos z powodu problemu z zabezpieczeniami.

Skonfigurowanie sieci SPN w ten sposób powoduje niepowodzenie uwierzytelniania Kerberos. Możliwe obejście tego problemu polegałoby na przejściu protokołu. Początkowe uwierzytelnianie między klientem a uruchomionym serwerem IIS będzie obsługiwane przy użyciu protokołu uwierzytelniania NTLM. Protokół Kerberos obsługuje uwierzytelnianie między usługą IIS a serwerem zasobów zaplecza.

Microsoft Internet Explorer 6 lub nowszy

W przeglądarce klienckiej mogą wystąpić problemy, takie jak odbieranie powtarzających się monitów o zalogowanie się w celu uzyskania poświadczeń lub komunikatów o błędach "Odmowa dostępu 401" z serwera z uruchomionym usługą IIS. Znaleźliśmy dwa następujące problemy, które mogą pomóc rozwiązać te problemy:

  • Sprawdź, czy we właściwościach przeglądarki jest zaznaczona pozycja Włącz zintegrowane uwierzytelnianie systemu Windows .
     

  • Jeśli w obszarze Dodaj/Usuń programy włączono konfigurację rozszerzonych zabezpieczeń programu Internet Explorer, należy dodać witrynę korzystającą z delegowania do
    listyZaufane witryny. 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:

    815141 Rozszerzona konfiguracja zabezpieczeń programu Internet Explorer zmienia środowisko przeglądania
     

IIS 5.0 i IIS 6.0

Po uaktualnieniu z IIS 4.0 do IIS 5.0 lub IIS 6.0 delegowanie może nie działać poprawnie lub być może ktoś lub aplikacja zmodyfikowała właściwość metabazy NTAuthenticationProviders.

 

Podczas ustawiania nazwy SPN może wystąpić określony obszar problemów

Określanie nazwy serwera

Określ, czy łączysz się z witryną sieci Web, używając rzeczywistej nazwy netBIOS serwera, czy przy użyciu nazwy aliasu, na przykład nazwy DNS (na przykład www.microsoft.com). Jeśli uzyskujesz dostęp do serwera sieci Web przy użyciu nazwy innej niż rzeczywista nazwa serwera, nowa nazwa główna usługi (SPN) musi zostać zarejestrowana przy użyciu narzędzia Setspn z zestawu Zasobów systemu Windows 2000 Server. Ponieważ usługa katalogowa Active Directory nie zna tej nazwy usługi, usługa przyznająca bilety nie daje biletu do uwierzytelnienia użytkownika. To zachowanie wymusza na kliencie używanie następnej dostępnej metody uwierzytelniania, czyli NTLM, do renegocjacji. Jeśli serwer sieci Web odpowiada na nazwę DNS www.microsoft.com ale jest nazwany webserver1.development.microsoft.com, musisz zarejestrować www.microsoft.com w usłudze Active Directory na serwerze z uruchomionym usługą IIS. W tym celu należy pobrać narzędzie Setspn i zainstalować je na serwerze z uruchomionym programem IIS.


Aby ustalić, czy nawiązujesz połączenie przy użyciu rzeczywistej nazwy, spróbuj nawiązać połączenie z serwerem, używając rzeczywistej nazwy serwera zamiast nazwy DNS. Jeśli nie możesz nawiązać połączenia z serwerem, zobacz sekcję "Sprawdzanie, czy komputer jest zaufany do delegowania".

Jeśli możesz połączyć się z serwerem, wykonaj następujące czynności, aby ustawić nazwę SPN dla nazwy DNS używanej do łączenia się z serwerem:

  1. Zainstaluj narzędzie Setspn.

  2. Na serwerze z uruchomionym programem IIS otwórz wiersz polecenia, a następnie otwórz folder C:\Program Files\Resource Kit.

  3. Uruchom następujące polecenie, aby dodać tę nową nazwę spn (www.microsoft.com) do usługi Active Directory dla serwera:

    Setspn -A HTTP/www.microsoft.com webserver1Uwaga W tym poleceniu serwer webserver1 reprezentuje nazwę serwera NetBIOS.

Otrzymasz dane wyjściowe podobne do następujących:
Rejestrowanie wartości ServicePrincipalNames dla CN=webserver1,OU=Domain Controllers,DC=microsoft,DC=com
HTTP/www.microsoft.com
Zaktualizowany obiekt
Aby wyświetlić listę nazw SPN na serwerze w celu wyświetlenia tej nowej wartości, wpisz następujące polecenie na serwerze z uruchomionym systemem IIS:

Setspn -L webservername Pamiętaj, że nie musisz rejestrować wszystkich usług. Wiele typów usług, takich jak HTTP, W3SVC, WWW, RPC, CIFS (dostęp do plików), WINS i zasilacz awaryjny (UPS), mapuje się na domyślny typ usługi o nazwie HOST. Jeśli na przykład oprogramowanie klienckie używa nazwy SPN http/webserver1.microsoft.com w celu utworzenia połączenia HTTP z serwerem sieci Web na serwerze webserver1.microsoft.com, ale ta nazwa SPN nie jest zarejestrowana na serwerze, kontroler domeny systemu Windows 2000 automatycznie zamapuje połączenie na host/webserver1.microsoft.com. To mapowanie ma zastosowanie tylko wtedy, gdy usługa sieci Web jest uruchomiona na lokalnym koncie systemowym.

Sprawdzanie, czy komputer jest zaufany podczas delegowania

Jeśli ten serwer z uruchomionym programem IIS jest członkiem domeny, ale nie jest kontrolerem domeny, aby protokół Kerberos działał poprawnie, komputer musi być zaufany. W tym celu wykonaj następujące czynności:

  1. Na kontrolerze domeny kliknij przycisk Start, wskaż pozycję Ustawienia, a następnie kliknij pozycję Panel sterowania.

  2. W Panel sterowania otwórz obszar Narzędzia administracyjne.

  3. Kliknij dwukrotnie Użytkownicy i komputery usługi Active Directory.

  4. W obszarze domeny kliknij pozycję Komputery.

  5. Na liście znajdź serwer z uruchomionym usługą IIS, kliknij prawym przyciskiem myszy nazwę serwera, a następnie kliknij polecenie Właściwości.

  6. Kliknij kartę Ogólne, kliknij, aby zaznaczyć
    pole wyboruZaufane do delegowania, a następnie kliknij przycisk
    OK.

Pamiętaj, że jeśli wiele witryn sieci Web zostanie osiągniętych za pomocą tego samego adresu URL, ale na różnych portach, delegowanie nie będzie działać. Aby to działało, musisz użyć różnych nazw hostów i różnych nazw SPN. Gdy program Internet Explorer zażąda http://www.mywebsite.com lub http://www.mywebsite.com:81, Internet Explorer żąda biletu na SPN HTTP/www.mywebsite.com. Program Internet Explorer nie dodaje portu ani pliku vdir do żądania spn. To zachowanie jest takie samo w przypadku http://www.mywebsite.com/app1 lub http://www.mywebsite.com/app2. W tym scenariuszu program Internet Explorer zażąda biletu na http://www spn.witrynę mywebsite.com z Centrum dystrybucji kluczy (KDC). Każdą nazwę spn można zadeklarować tylko dla jednej tożsamości. Dlatego podczas próby zadeklarowania tej nazwy SPN dla każdej tożsamości zostanie wyświetlony komunikat o błędzie KRB_DUPLICATE_SPN.

Delegowanie i microsoft ASP.NET

Aby uzyskać więcej informacji na temat konfiguracji dotyczącej delegowania poświadczeń podczas korzystania z aplikacji ASP.NET, kliknij następujący numer artykułu, aby wyświetlić ten artykuł w bazie wiedzy Microsoft Knowledge Base:

810572 Jak skonfigurować aplikację ASP.NET dla scenariusza

delegowania Personifikacja i delegowanie to dwie metody uwierzytelniania serwera w imieniu klienta. Określenie, które z tych metod używać i ich implementacji może spowodować pewne zamieszanie. Należy przejrzeć różnicę między tymi dwiema metodami i sprawdzić, które z tych metod można użyć dla aplikacji. Moim zaleceniem byłoby przeczytanie poniższej białej księgi w celu uzyskania dalszych szczegółów:

http://msdn2.microsoft.com/en-us/library/ms998351.aspx

Informacje



http://technet.microsoft.com/en-us/library/cc757299.aspxhttp://msdn.microsoft.com/msdnmag/issues/05/09/SecurityBriefs/default.aspx

262177 Jak włączyć rejestrowanie zdarzeń Kerberos

Rozwiązywanie problemów z błędami protokołu Kerberos w programie Internet Explorer

Jak zawsze, możesz przesyłać pomysły na tematy, które chcesz rozwiązać w przyszłych kolumnach lub w bazie wiedzy przy użyciu formularza Zapytaj o to.

Potrzebujesz dalszej pomocy?

Chcesz uzyskać więcej opcji?

Poznaj korzyści z subskrypcji, przeglądaj kursy szkoleniowe, dowiedz się, jak zabezpieczyć urządzenie i nie tylko.

Społeczności pomagają zadawać i odpowiadać na pytania, przekazywać opinie i słuchać ekspertów z bogatą wiedzą.

Czy te informacje były pomocne?

Jaka jest jakość języka?
Co wpłynęło na Twoje wrażenia?
Jeśli naciśniesz pozycję „Wyślij”, Twoja opinia zostanie użyta do ulepszania produktów i usług firmy Microsoft. Twój administrator IT będzie mógł gromadzić te dane. Oświadczenie o ochronie prywatności.

Dziękujemy za opinię!

×