Chcę uruchomić pakiet SSIS zawierający zadania Transfer SQL Server Objects. Zaangażowane serwery znajdują się w tej samej domenie, ale usługi SQL Server działają na lokalnych kontach usług. Więc środowisko wygląda następująco:
Domena
Serwer 1
- SQL Server działający na koncie lokalnym
- W systemie plików: pakiet SSIS
- W SQL Server Agent: zadanie
Serwer 2
- SQL Server działający na koncie lokalnym
Aby móc zalogować się na oba serwery, utworzyłem konto domeny, które będzie używane jako konto usługi. Kiedy korzystam z tego konta domeny, aby zalogować się do serwera 1, a następnie uruchomić pakiet z systemu plików, każdy krok kończy się powodzeniem. Jednak gdy próbuję dodać zadanie do programu SQL Server, napotykam jeden z następujących problemów:
Sytuacja 1. Właściciel pracy: konto lokalne; uruchom SSIS krok jako serwer proxy do konta domeny . Gdy ustawię właściciela zadania na konto lokalne, ale uruchomię zadanie jako serwer proxy do konta domeny, samo zadanie zostanie pomyślnie wykonane, ale pakiet zgłasza błędy, takie jak
Wykonanie nie powiodło się z następującym błędem: „Katalog„ LocalApplicationData ”nie istnieje.”.
Ten błąd można naprawić, tworząc login z uprawnieniami administratora dla użytkownika domeny na serwerze 1, ale oczywiście nie jest to pożądane rozwiązanie. Dodanie konta do jednej z grup agentów / grup DTS programu SQL Server również nie działa.
Sytuacja 2. Właściciel zadania: konto domeny; uruchom SSIS krok jako serwer proxy do konta domeny . Gdy ustawię zarówno właściciela zadania, jak i opcję „Uruchom jako użytkownik” dla kroku do konta domeny, zadanie w ogóle się nie uruchomi z następującym błędem:
Nie można ustalić, czy właściciel (domena \ użytkownik domeny) zadania
Job name
ma dostęp do serwera (powód: Nie można uzyskać informacji o grupie systemu Windows NT / użytkownik „domena \ użytkownik domeny”, kod błędu 0x5. [SQLSTATE 42000] (Błąd 15404)) .
Uważam, że ostatnim błędem jest to, że SQL Server działa na koncie lokalnym i nie może sprawdzić, które konta domeny praw mają.
Jaki jest właściwy sposób na uruchomienie zadania? Sytuacja 2 wydaje mi się czystsza, ale wydaje się niemożliwa, ponieważ SQL Server działa na koncie lokalnym. Sytuacja 1 też by działała, ale przyznanie praw administracyjnych użytkownika domeny na moim SQL Server nie nastąpi.
AKTUALIZACJA:
@JonSeigel i @ Mr.Brownstone:
Wydaje się prawdopodobne, że problem ten wynika z braku uprawnień. Błąd dotyczy jednak nieistnienia „LocalApplicationData” - jednego z folderów generowanych dla każdego konta. Zalogowałem się już na serwerze przy użyciu poświadczeń, na podstawie których działa pakiet (tworząc katalog profilu) i wypróbowałem kilka kombinacji uprawnień do katalogu profilu. Nawet gdy ręcznie udzielam prawie wszystkich uprawnień w tym konkretnym katalogu, pojawia się błąd wymieniony powyżej.
Podczas dalszych badań natknąłem się na wątek na forum pod adresem http://www.sqlservercentral.com/Forums/Topic391332-148-1.aspx#bm391441, który jest dość podobny - jednak bez rozwiązania.
źródło
Odpowiedzi:
Moim osobistym zdaniem jest taka opcja nr 1. Ale nie widzę potrzeby, abyś musiał przyznać lokalnemu administratorowi konto domeny. Wydaje mi się, że wymaga dostępu do niektórych folderów i plików, więc użytkownik domeny może uzyskać dostęp tylko do zasobów niezbędnych do pomyślnego uruchomienia pakietu. Można tego dokonać w oknie dialogowym właściwości pliku / folderu i wybrać kartę zabezpieczeń - nie powinno być potrzeby ustawiania go dla każdego pliku i folderu, ponieważ można ustawić uprawnienia do katalogu nadrzędnego i ustawić je tak, aby przesłoniły właściwości potomne.
Mam nadzieję, że to Ci pomoże.
źródło