Delegowanie ograniczone dla systemu CIFS kończy się niepowodzeniem z powodu błędu ACCESS_DENIED
Ten artykuł pomaga naprawić błąd odmowy dostępu, który występuje podczas uzyskiwania dostępu do usługi korzystającej z udziałów sieciowych na serwerze warstwy środkowej.
Oryginalny numer KB: 2602377
Symptomy
Podczas uzyskiwania dostępu do usługi korzystającej z udziałów sieciowych na serwerze warstwy środkowej użytkownicy są monitowani o poświadczenia i w końcu napotykają błąd odmowy dostępu.
Przykładowe scenariusze
Scenariusz 1
Użytkownik jest monitowany o podanie poświadczeń, a dostęp ostatecznie kończy się niepowodzeniem z powodu błędu odmowy dostępu, jeśli spełnione są następujące warunki:
- Witryna internetowa usług IIS została skonfigurowana z katalogiem macierzystkowym wskazującym udział zdalny przy użyciu uwierzytelniania przekazywanego i ograniczonego delegowania skonfigurowanego dla systemu plików CIFS.
- Pula aplikacji USŁUG IIS, która uzyskuje dostęp do tego udziału, jest uruchomiona w ramach tożsamości konta usługi.
- Konto domeny jest zaufane w przypadku delegowania usługi cifs na serwerze plików.
- Na serwerze plików i serwerze internetowym jest uruchomiony system operacyjny wymieniony w sekcji Dotyczy.
Scenariusz 2
- Aplikacja internetowa próbuje uzyskać dostęp do serwera plików jako użytkownik.
- Pula aplikacji usług IIS, która uzyskuje dostęp do udziału, jest uruchomiona w ramach tożsamości konta usługi. Konto domeny jest zaufane w przypadku delegowania usługi cifs na serwerze plików.
- Ograniczone delegowanie skonfigurowane dla systemu CIFS jest skonfigurowane na koncie usługi dla serwera plików.
- Typy serwerów plików i serwerów sieci Web są wymienione w sekcji Dotyczy.
Scenariusz 3.
- Każda aplikacja po stronie serwera, która jest uzyskiwana z klienta, uzyskuje dostęp do udziałów zdalnych jako użytkownik.
- Aplikacja po stronie serwera działa w kontekście konta usługi.
- Konto usługi jest zaufane dla delegowania i skonfigurowane dla delegowania CIFS dla serwera plików.
- Typy serwerów plików i serwerów sieci Web są wymienione w sekcji Dotyczy.
Przyczyna
Zostało to zidentyfikowane jako problem między mrxSmb 2.0 i Kerberos, gdy jest zaangażowany ograniczone delegowanie.
Rozwiązanie
Obejście 1
Użyj konta komputera zamiast konta usługi jako tożsamości dla aplikacji, które będą wykonywać ograniczone delegowanie dla systemu ciFS. Skonfiguruj ograniczone delegowanie, gdy poziom funkcjonalności domeny to Windows Server 2003, Windows Server 2008 lub Windows Server 2008 R2.
Aby to zrobić na kontrolerze domeny dla domeny serwerów sieci Web, wykonaj następujące kroki:
- Kliknij przycisk Start, kliknij przycisk Narzędzia administracyjne, a następnie kliknij przycisk Użytkownicy usługi Active Directory i komputerów.
- Rozwiń węzeł domena, a następnie rozwiń folder Komputery.
- W okienku po prawej stronie kliknij prawym przyciskiem myszy nazwę komputera serwera internetowego, wybierz pozycję Właściwości, a następnie kliknij kartę Delegowanie.
- Zaznacz pole wyboru Ufaj temu komputerowi w delegowaniu tylko do określonych usług.
- Upewnij się, że wybrano opcję Użyj tylko protokołu Kerberos, a następnie kliknij przycisk OK.
- Kliknij przycisk Dodaj. W oknie dialogowym Dodawanie usług kliknij pozycję Użytkownicy lub komputery, a następnie przejdź do lub wprowadź nazwę serwera plików, który otrzyma poświadczenia użytkownika z usług IIS. Kliknij przycisk OK.
- Na liście Dostępne usługi wybierz usługę CIFS. Kliknij przycisk OK.
Obejście 2
Jeśli musisz użyć tożsamości aplikacji jako konta usługi i/lub konta domeny, użyj następującego obejścia.
Uwaga 16.
To obejście nie jest zalecane, ponieważ wymaga delegowania protokołu uwierzytelniania na koncie komputera. Jeśli wybrano opcję Użyj dowolnego protokołu uwierzytelniania, konto korzysta z ograniczonego delegowania z przejściem protokołu.
- Kliknij przycisk Start, kliknij przycisk Narzędzia administracyjne, a następnie kliknij przycisk Użytkownicy usługi Active Directory i komputerów.
- Rozwiń węzeł domena, a następnie rozwiń folder Komputery.
- W okienku po prawej stronie kliknij prawym przyciskiem myszy nazwę komputera serwera internetowego, wybierz pozycję Właściwości, a następnie kliknij kartę Delegowanie.
- Zaznacz pole wyboru Ufaj temu komputerowi w delegowaniu tylko do określonych usług.
- Upewnij się, że wybrano opcję Użyj dowolnego protokołu uwierzytelniania, a następnie kliknij przycisk OK.
- Kliknij przycisk Dodaj. W oknie dialogowym Dodawanie usług kliknij pozycję Użytkownicy lub komputery, a następnie przejdź do lub wprowadź nazwę serwera plików, który otrzyma poświadczenia użytkowników z usług IIS. Kliknij przycisk OK.
- Na liście Dostępne usługi wybierz usługę CIFS. Kliknij przycisk OK.
- W okienku po lewej stronie rozwiń folder Użytkownicy.
- W okienku po prawej stronie kliknij prawym przyciskiem myszy konto usługi, które jest tożsamością puli aplikacji, wybierz pozycję Właściwości, a następnie kliknij kartę Delegowanie.
- Zaznacz pole wyboru Ufaj temu komputerowi w delegowaniu tylko do określonych usług.
- Upewnij się, że wybrano opcję Użyj tylko protokołu Kerberos, a następnie kliknij przycisk OK.
- Kliknij przycisk Dodaj. W oknie dialogowym Dodawanie usług kliknij pozycję Użytkownicy lub komputery, a następnie przejdź do lub wprowadź nazwę serwera plików, który otrzyma poświadczenia użytkowników z usług IIS. Kliknij przycisk OK.
- Na liście Dostępne usługi wybierz usługę CIFS. Kliknij przycisk OK.