Logowanie nie powiodło się dla użytkownika „NT AUTHORITY \ ANONYMOUS LOGON”. (MsDtsSrvr)


9

Mam środowisko klastrowe, w którym jest wiele instancji. Zmodyfikowałem plik xml, aby umożliwić kilku instancjom używanie ssis. Wszystko działa świetnie, gdy instancje znajdują się w tym samym węźle co ssis klastrowane. Jeśli jednak są one w różnych węzłach, prawdopodobnie występuje problem z uwierzytelnieniem i traci on moje dane uwierzytelniające. Z jakiegoś powodu próbuje zamiast tego użyć logowania anonimowego. Oto pełny błąd:

Serwer SQL określony w konfiguracji usługi SSIS nie istnieje lub jest niedostępny. Może się to zdarzyć, gdy na komputerze nie ma domyślnej instancji programu SQL Server. Aby uzyskać więcej informacji, zobacz temat „Konfigurowanie usługi integracji” w Server 2005 Books Online.

Logowanie nie powiodło się dla użytkownika „NT AUTHORITY \ ANONYMOUS LOGON”. (MsDtsSrvr)

Byłbym wdzięczny za pomoc w rozwiązaniu tego problemu.

Dzięki,


Czy dostałeś na to odpowiedź? Mam dokładnie ten sam problem

Odpowiedzi:


11

Wygląda na to, że jest to problem ze schematem uwierzytelniania. Jeśli moja pamięć działa poprawnie, pojawienie się ANONIMOWEGO LOGOWANIA wskazuje na użycie NTLM zamiast Kerberos. Jeśli Twoja usługa SQL Server działa z poświadczeniem domeny, musisz upewnić się, że dla programu SQL Server jest dostępna nazwa zasady usługi (SPN). Składnię polecenia SetSPN można znaleźć tutaj: SetSPN Krótko mówiąc, musisz połączyć protokół z portem TCP i kontem usługi. Wierzę, że polecenie będzie wyglądać mniej więcej tak:

setspn -s MSSQLSvc/Server.Domain:TCPPort Domain\ServiceUser

Aby sprawdzić, jakiego schematu uwierzytelniania używają twoje istniejące połączenia, uruchom następujący kod:

SELECT
    dec.session_id,
    dec.auth_scheme
FROM sys.dm_exec_connections AS dec

Jeśli poprawnie skonfigurowany dla Kerberos, zobaczysz Kerberos w kolumnie auth_scheme. Jeśli nie, zobaczysz NTLM.

Wreszcie, jeśli konfiguracja wymaga uwierzytelnienia z wieloma przeskokami, konieczne będzie skonfigurowanie każdego kolejnego przeskoku przed programem SQL Server, aby umożliwić delegowanie. W usłudze Active Directory przejdź do strony właściwości konta komputera lub użytkownika, która będzie musiała przejść przez uwierzytelnianie do SQL Server, przejdź do karty Delegacja, wybierz „Ufaj temu użytkownikowi w kwestii delegacji tylko na Kerberos”, a następnie wybierz usługę do którego to konto przejdzie uwierzytelnianie (wyszukaj swoje konto usługi SQL Server).

Mam nadzieję że to pomoże,

Matt

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.