Подтвердить что ты не робот

Как запланировать пакет SSIS для запуска как нечто иное, кроме учетной записи службы агента SQL

В SQL Server 2005 возможно ли запланировать пакет SSIS для запуска чего-то другого, кроме учетной записи службы агента SQL?

У меня есть пакет SSIS, который соединяется с базой данных и запускает хранимую процедуру. Мои критерии заключаются в том, что я не буду указывать имена пользователей/пароли в конфигурации пакета или пакета, поэтому я хочу использовать встроенную проверку подлинности.

Проблема заключается в том, что по умолчанию шаг задания выполняется как учетная запись службы SQL Agent, и наша группа серверов не хочет предоставлять права на выполнение этой учетной записи на хранимых процедурах, которые будет выполняться моим пакетом. Поэтому мы пытаемся найти способ указать другую учетную запись на этом шаге, поэтому пакет будет работать в другом контексте. Возможно ли это?

4b9b3361

Ответ 1

Если вы хотите выполнить пакет SSIS из заданий агента SQL, вы можете создать прокси-сервер.

Ответ 2

Если у вас есть доступ к SQL Server Agent через SQL Server Management Studio, выполните следующие шаги, чтобы создать задание с использованием графического интерфейса пользователя. Шаги показывают, как создать задание SQL для запуска SSIS с использованием учетной записи службы SQL Agent, а также как создать прокси для запуска с использованием разных учетных данных.

  • Перейдите в SQL Server Management Studio. Разверните SQL Server Agent и щелкните правой кнопкой мыши на "Задания", затем выберите New Job..., как показано на снимке экрана 1.

  • Укажите имя и владелец по умолчанию - это учетная запись, которая создает задание, но вы можете изменить ее в соответствии с вашими требованиями. Присвойте категорию, если хотите, а также укажите описание. См. Снимок экрана # 2.

  • В разделе "Шаги" нажмите New..., как показано на скриншоте # 3.

  • В диалоговом окне "Шаг нового задания" укажите имя шага. Выберите SQL Server Inegration Services Package из типа. Этот шаг будет работать под SQL Agent Service Account по умолчанию. Выберите источник пакета как File system и перейдите к пути пакета, нажав на многоточие. Это заполнит путь пакета. См. Снимок экрана # 4. Если вы не хотите, чтобы этот шаг выполнялся под SQL Agent Service Account, обратитесь к шагам # 8 - 9, чтобы узнать, как вы можете используйте другую учетную запись.

  • Если у вас есть файл конфигурации SSIS (.dtsConfig) для пакета, перейдите на вкладку Конфигурации и добавьте файл конфигурации, как показано на скриншоте # 5 > .

  • Нажмите "ОК", и на шаге 1 появится пакет, как показано на скриншоте # 6. Аналогичным образом вы можете создавать различные этапы.

  • После создания задания вы можете щелкнуть правой кнопкой мыши по заданию и выбрать Script Job as --> CREATE To --> New Query Editor Window для генерации script, как показано на снимке экрана 7.

  • Чтобы запустить шаг SSIS под другой учетной записью, в Studio Management перейдите к Security --> right-click on Cedentials --> select New Credential..., как показано на снимке экрана 8.

  • В диалоговом окне New Credential укажите имя учетных данных, учетную запись Windows и пароль, в соответствии с которыми вы хотите выполнить шаги SSIS в SQL-заданиях. Смотрите скриншот # 9. Учетные данные будут созданы, как показано на скриншоте # 10.

  • Затем нам нужно создать прокси. В Studio Management перейдите к SQL Server Agent --> Proxies --> right-click on SSIS Package Execution --> select New Proxy..., как показано на скриншоте # 11.

  • В окне "Новая учетная запись прокси" укажите имя прокси, выберите вновь созданные учетные данные, укажите описание и выберите пакет служб интеграции SQL Server, как показано на скриншоте # 12. Прокси-аккаунт должен быть создан, как показано на снимке экрана < 13.

  • Теперь, если вы вернетесь к шагу в задаче SQL, вы увидите новую созданную учетную запись прокси в раскрывающемся списке Выполнить как. См. Снимок экрана # 14.

Надеюсь, что это поможет.

Снимок экрана №1:

1

Снимок экрана №2:

2

Снимок экрана №3: ​​

3

Снимок экрана №4:

4

Снимок экрана № 5:

5

Снимок экрана № 6:

6

Снимок экрана № 7:

7

Снимок экрана # 8:

8

Снимок экрана № 9:

9

Снимок экрана № 10:

10

Снимок экрана № 11:

11

Снимок экрана № 12:

<Т411 >

Снимок экрана № 13:

13

Снимок экрана № 14:

14

Ответ 3

С SQL 2012 у меня возникла ошибка, когда выбранная учетная запись пользователя не может быть прокси. С помощью следующего запроса была решена эта проблема:

use msdb
GO
exec sp_grant_login_to_proxy @login_name = 'MyLoginName', @proxy_name= 'proxy_SSIS'