Проблема с учетной записью задания агента SQL Server - PullRequest
4 голосов
/ 01 августа 2009

Я использую SQL Server 2008. Я не понимаю, какая учетная запись будет использоваться при выполнении задания агента SQL Server. Мои заблуждения,

  1. Агент SQL Server как служба Windows, которой мы можем управлять из консоли управления службами Windows, оттуда мы можем настроить учетную запись для запуска агента SQL Server (LocalSystem на моем компьютере);
  2. Могу ли я настроить учетную запись уровня задания агента SQL Server для запуска?
  3. Могу ли я указать на каждом шаге, какой шаг задания агента SQL Server для учетной записи будет выполняться?

У меня есть вышеуказанные недоразумения, потому что могут использоваться 3 разные системы учетных записей, и меня беспокоит, какая учетная запись будет действительной для каждого шага, и я хочу избежать проблем с разрешением (т. Е. Хочу убедиться, что у учетной записи достаточно прав .). Любые комментарии или советы? Ценить любого, кто мог бы уточнить 3 уровня счетов, что меня очень смущает.

спасибо заранее, George

Ответы [ 2 ]

5 голосов
/ 01 августа 2009

Обычно я запускаю задания агента SQL Server под той же учетной записью, что и ваше приложение для доступа к базе данных.

Если эта учетная запись слишком ограничена в своих разрешениях (что может быть хорошо!), Я бы создал одну учетную запись для этого приложения и всех его заданий SQL (если это возможно) и запустил бы все задания SQL под этой учетной записью.

Вы могли бы потенциально запускать каждый шаг под другой учетной записью, но я бы не стал использовать это в целом (просто очень трудно узнать и понять, что запускается под какой учетной записью). Используйте его только в том случае, если вам нужно выполнить особенно чувствительный шаг, для которого требуется куча дополнительных разрешений, и эти разрешения доступны только для определенной системной учетной записи или чего-то еще.

Учетная запись, под которой запускается служба Windows агента SQL Server, действительно не влияет на то, под какими шагами будут выполняться ваши задания.

Таким образом, все сводится к двум учетным записям:

  • одна учетная запись необходима для запуска службы Windows агента SQL Server - это учетная запись Windows на вашем компьютере / сервере, которая должна иметь достаточно разрешений для запуска службы, ее запуска и остановки - либо используйте LocalSystem, Network Служба или любая другая учетная запись Windows, для запуска служб которой необходимо

  • Другой учетной записью будет учетная запись для выполнения шагов вашего агента SQL Server - обычно это учетная запись SQL Server (которая может быть основана на учетной записи Windows), и ей требуется достаточно привилегий внутри SQL Server, чтобы сделать это. работа, например ему нужен доступ к объектам базы данных и все. Я бы стремился иметь только одну учетную запись для каждого приложения, которое выполняет задания SQL Server - это делает жизнь намного проще!

Марк

PS: чтобы настроить пользователя на выполнение шага, необходимо использовать страницу «Дополнительно» в диалоговом окне свойств шага задания и выбрать пользователя во всплывающем окне:

alt text

4 голосов
/ 01 августа 2009

Вы можете создавать учетные данные в SQL Server (используйте Mgt Studio в разделе «Безопасность»). Затем создайте прокси в агенте SQL, чтобы использовать эти учетные данные, сообщив ему, какие этапы задания могут использоваться прокси. Затем вы получаете возможность использовать этот прокси-сервер на этапе работы.

Итак ... Я создаю учетные записи для запуска различных пакетов служб SSIS, чтобы я мог сохранять низкую привилегию учетной записи службы агента SQL и использовать прокси-учетные данные с чуть более высокой привилегией (но не с правами администратора, только с достаточным разрешением для подключения в другие системы, включая файловую систему).

Rob

...