Обеспечение безопасности агента SQL Server

Агент SQL Server позволяет администратору базы данных выполнять каждый шаг задания в контексте безопасности, имеющем только те разрешения, которые необходимы для выполнения шага задания, что обеспечивается учетными записями-посредниками агента SQL Server. Для установки разрешений для конкретного шага задания необходимо создать учетную запись-посредник, обладающую необходимыми разрешениями, а затем назначить ее шагу задания. Учетная запись-посредник может быть назначена нескольким этапам задания. Шагам задания, которым требуются одинаковые разрешения, назначают одну и ту же учетную запись-посредник.

ПримечаниеПримечание

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

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

Предоставление доступа к агенту SQL Server

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

  • SQLAgentUserRole

  • SQLAgentReaderRole

  • SQLAgentOperatorRole

Эти роли хранятся в базе данных msdb. По умолчанию ни один из пользователей ни в одну из этих ролей не входит. Членство в них должно быть предоставлено явным образом. Пользователи, являющиеся членами предопределенной роли сервера sysadmin, имеют полный доступ к агенту SQL Server, и не должны быть членами перечисленных предопределенных ролей базы данных, чтобы его использовать. Если пользователь не является ни членом указанных ролей базы данных, ни членом роли sysadmin, узел агента SQL Server при подключении к SQL Server с помощью среды Среда SQL Server Management Studio для него недоступен.

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

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

Правила

Чтобы повысить защищенность системы безопасности агента SQL Server следуйте следующим правилам:

  • создавайте специально выделенные учетные записи-посредники, и для выполнения шагов заданий пользуйтесь только ими;

  • предоставляйте разрешения только необходимым учетным записям-посредникам. Предоставляйте только те разрешения, которые действительно необходимы для выполнения шагов задания, которому назначена данная учетная запись-посредник;

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