Wykonania pakietu:
Narzędzia danych SQL Server:
Poświadczenia użytkownika, w ramach których SQL Server Data Tools (SSDT)
do wykonania pakietów, które są wykonywane w SSDT.
W systemie Windows Start \ Wszystkie programy \ Microsoft SQL Server 2012, jeśli klikniesz SQL Server Data Tools, będzie on działał z Twoimi poświadczeniami. Aby uruchomić na innym koncie użytkownika, możesz nacisnąć Ctrl + przesunięcie aby wybrać Uruchom jako inny użytkownik
opcja.
Usługi katalogu integracji:
Po kliknięciu prawym przyciskiem myszy pakietu w Katalog usług integracji \ SSISDB \
i wybierz Wykonaj...
uruchomić pakiet. Pakiet będzie działał z danymi uwierzytelniającymi używanymi do połączenia z SQL Server Management Studio.
Pamiętaj, że jeśli spróbujesz uruchomić pakiet przy użyciu uwierzytelniania SQL Server, otrzymasz poniższy komunikat o błędzie:
Po naciśnięciu Wykonaj...
, Serwer SQL
obraca proces ISServerExec.exe
, który uruchamia Host okna konsoli
proces:
ISServerExec.exe
to program wykonujący pakiety w katalogu SSIS. W tym przypadku jest uruchamiany przez tego samego użytkownika, który wykonuje pakiet SSIS z SQL Server Management Studio.
Zadanie agenta SQL Server bez proxy:
Po uruchomieniu pakietu SSIS z poziomu zadania agenta SQL Server , krok zadania domyślnie działa w ramach konta usługi agenta SQL Server
. Konto użytkownika powiązane z usługą agenta SQL Server można znaleźć, przechodząc do Windows Start \ Narzędzia administracyjne \ Usługi
, poszukaj usługi SQL Server Agent (Twoja nazwa instancji
) i znajdź konto użytkownika wymienione w sekcji Zaloguj się jako
Zadanie agenta serwera SQL z serwerem proxy:
Można również uruchomić zadanie agenta programu SQL Server z innymi poświadczeniami, tworząc konto proxy. Gdy kroki zadania są wykonywane na koncie proxy, pakiet w kroku zadania zostanie wykonany na podstawie danych uwierzytelniających określonych na koncie proxy.
Poniżej odpowiedź SO zawiera instrukcje krok po kroku dotyczące tworzenia konta proxy w celu uruchomienia zadań agenta SQL Server.
Jak utworzyć krok w zadaniu SQL Server Agent, który uruchomi mój pakiet SSIS?
Jak zweryfikować:
Przykładowy pakiet SSIS 2012:
Oto, co zrobiłem, aby zweryfikować powyższe oświadczenia w odniesieniu do kont użytkowników używanych do wykonywania pakietów.
-
Otwórz Narzędzia danych programu SQL Server i utwórz pakiet SSIS 2012 o nazwie
SO_15289442.dtsx
. -
Utwórz zmienną o nazwie
ExecutionUser
typu danychString
. Przypisz wyrażenie@[System::UserName]
do zmiennej.Nazwa użytkownika
to zmienna systemowa, która dostarcza informacje o użytkowniku wykonującym pakiet. -
Przeciągnij i upuść Wyślij zadanie poczty na przepływ danych zakładka.
-
Utwórz połączenie SMTP i przypisz je do
SmtpConnection
na stronie Edytor zadań wysyłania poczty — Poczta. -
Określ
Od
iDo
adresy e-mail. -
Zmień MessageSourceType do
zmiennej
. -
Ustaw
MessageSource
doUser::ExecutionUser
. -
Kliknij pakiet prawym przyciskiem myszy i wybierz Wdróż, aby wdrożyć projekt w katalogu usług integracyjnych dostępnym na wybranym serwerze.
Wykonania pakietów
-
Uruchom pakiet w SSDT.
-
Otwórz SSDT, używając opcji Uruchom jako inną opcję użytkownika. Podaj inne poświadczenia inne niż Twoje i uruchom pakiet ponownie.
-
Uruchom pakiet z katalogu usług integracji.
-
Utwórz zadanie agenta serwera SQL, aby uruchomić pakiet przy użyciu konta usługi agenta serwera SQL.
-
Utwórz zadanie agenta SQL Server, aby uruchomić pakiet przy użyciu konta proxy.
W przypadku każdego wykonania wymienionego powyżej otrzymasz wiadomość e-mail z kontem użytkownika, które zostało użyte do wykonania pakietu.
Twój problem:
W Twoim przypadku pakiet zostanie uruchomiony na Twoim koncie (zakładając, że używasz swoich danych logowania, aby uzyskać dostęp do SSISDB ) po kliknięciu prawym przyciskiem myszy i wybraniu opcji Wykonaj z katalogu usług integracji. Upewnij się, że konto ma dostęp do ścieżki sieciowej.
Jeśli uruchamiasz pakiet z poziomu zadania SQL Server Agent, konto proxy to uruchom jako inny użytkownik
opcja, na którą patrzysz.