Usiłuję uzyskać połączony serwer z serwerem A utworzonym na innym serwerze, ServerB przy użyciu „Wykonaj przy użyciu bieżącego kontekstu bezpieczeństwa logowania” w środowisku domeny. Przeczytałem, że muszę mieć nazwy SPN utworzone dla kont usług, które uruchamiają SQL Server na każdym z serwerów, aby włączyć Kerberos. Zrobiłem to i oba pokazują teraz schemat uwierzytelniania jako Kerberos, jednak nadal mam do czynienia z błędem:
"Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'".
W usłudze Active Directory widzę, że konto usługi dla ServerB jest zaufane w kwestii delegowania do MSSQLSvc, ale zauważyłem, że konto usługi dla ServerA nie ma jeszcze włączonej opcji „ufaj temu użytkownikowi w kwestii delegowania”. Czy serwer docelowy również musi mieć włączoną tę opcję? Czy jest coś jeszcze niezbędnego, aby móc korzystać z bieżącego loginu systemu Windows, aby korzystać z serwera połączonego?
źródło
Dwie rzeczy tutaj:
Podczas korzystania z serwera połączonego bez mapowania lokalnego serwera logowania do serwera zdalnego, nie loguj się na komputerze zdalnym i używaj loginu Windows do uruchamiania skryptów. W grę wchodzi kwestia podwójnego przeskoku, ponieważ używa personifikacji.
Konieczne będzie również ustawienie lokalnego kodu DTC za pośrednictwem DCOMCNFG w celu komunikacji. Zobacz załączone zdjęcie.
(DCOMCNFG -> Usługi składowe -> Komputery -> Mój komputer -> Koordynator transakcji rozproszonych -> LocalDTC -> Właściwości -> Bezpieczeństwo)
źródło