Поделиться через


Роли служб Integration Services (службы SSIS)

SQL Server службы Integration Services включают три предопределенных роли уровня базы данных, db_ssisadmindb_ssisltduser и db_ssisoperator для управления доступом к пакетам. Роли можно реализовать только в пакетах, сохраненных msdb в базе данных в SQL Server. С помощью среды SQL Server Management Studioможно назначить роль пакету. Назначения ролей сохраняются в msdb базе данных.

Действия чтения и записи

В следующей таблице приводятся операции чтения и записи Windows и предопределенных ролей уровня базы данных в службах Службы Integration Services.

Роль Операция чтения Операция записи
db_ssisadmin

или

sysadmin
Перечислить свои пакеты.

Перечислить все пакеты.

Посмотреть свои пакеты.

Посмотреть все пакеты.

Выполнить свои пакеты.

Выполнить все пакеты.

Экспортировать свои пакеты.

Экспортировать все пакеты.

Выполнить все пакеты агента SQL Server .
Импортировать пакеты.

Удалить свои пакеты.

Удалить все пакеты.

Изменить роли своих пакетов.

Изменить роли всех пакетов.



**Важно** Члены роли db_ssisadmin и роли dc_admin могут повысить свои привилегии до sysadmin. Такое повышение права доступа может произойти, так как эти роли могут изменять пакеты служб Службы Integration Services , а пакеты Службы Integration Services могут выполняться SQL Server при помощи контекста безопасности sysadmin агента SQL Server . Чтобы предотвратить такое повышение прав при выполнении планов обслуживания, наборов сбора данных и других пакетов служб Службы Integration Services , настройте задания агента SQL Server , запускающие пакеты, на использование учетной записи-посредника с ограниченными правами или добавьте членов sysadmin в роли db_ssisadmin и dc_admin.
db_ssisltduser Перечислить свои пакеты.

Перечислить все пакеты.

Посмотреть свои пакеты.

Выполнить свои пакеты.

Экспортировать свои пакеты.
Импортировать пакеты.

Удалить свои пакеты.

Изменить роли своих пакетов.
db_ssisoperator Перечислить все пакеты.

Посмотреть все пакеты.

Выполнить все пакеты.

Экспортировать все пакеты.

Выполнить все пакеты агента SQL Server .
None
Администраторы Windows Просмотреть подробности выполнения всех запущенных пакетов. Остановить все выполняемые пакеты.

Таблица Sysssispackages

Таблица sysssispackages в msdb содержит пакеты, сохраненные в SQL Server. Дополнительные сведения см. в статье sysssispackages (Transact-SQL).

Таблица sysssispackages включает в себя столбцы, которые содержат сведения о ролях, назначенных пакетам.

  • В столбце readerrole указывается роль, у которой есть право чтения из пакета.

  • В столбце writerrole указывается роль, у которой есть право записи в пакет.

  • Столбец ownersid содержит уникальный идентификатор безопасности пользователя, создавшего пакет. Этот столбец определяет владельца пакета.

Разрешения

По умолчанию разрешения db_ssisadmin и db_ssisoperator предопределенных ролей уровня базы данных и уникальный идентификатор безопасности пользователя, создавшего пакет, применяются к роли читателя пакетов, а разрешения db_ssisadmin роли и уникальный идентификатор безопасности пользователя, создавшего пакет, применяются к роли записи. Пользователь должен быть членом db_ssisadminроли , db_ssisltduser или db_ssisoperator , чтобы иметь доступ на чтение к пакету. Пользователь должен быть членом роли, db_ssisadmin чтобы иметь доступ на запись.

Доступ к пакетам

Фиксированные роли уровня базы данных работают в сочетании с пользовательскими ролями. Пользовательские роли — это роли, которые создаются в среде SQL Server Management Studio и после используются для назначения разрешений пакетам. Чтобы получить доступ к пакету, пользователь должен быть членом пользовательской роли и соответствующей предопределенной роли служб Службы Integration Services уровня базы данных. Например, если пользователи являются членами определяемой пользователем роли AuditUsers , назначенной пакету, они также должны быть членами db_ssisadminроли , db_ssisltduser или db_ssisoperator , чтобы иметь доступ на чтение к пакету.

Если пакетам не назначить пользовательских ролей, то доступом к пакетам будут управлять только предопределенные роли базы данных.

Если вы хотите использовать определяемые пользователем роли, их необходимо добавить в msdb базу данных, прежде чем назначать их пакетам. Новую роль базы данных можно создать в среде SQL Server Management Studio.

Роли уровня базы данных служб Службы Integration Services предоставляют право доступа к системным таблицам служб Службы Integration Services базы данных msdb.

SQL Server (служба MSSQLSERVER) необходимо запустить, прежде чем вы сможете подключиться к ядру СУБД и получить доступ к msdb базе данных.

Чтобы назначить роли пакетов, необходимо выполнить следующие задачи.

  • Откройте обозреватель объектов и подключитесь к службам Integration Services

    Перед тем как с помощью среды SQL Server Management Studioназначить роли для пакетов, необходимо открыть обозреватель объектов в среде SQL Server Management Studio и подключиться к службам Службы Integration Services.

    Служба Службы Integration Services должна быть запущена перед подключением к Службы Integration Services.

  • Назначение пакетам ролей модулей чтения и записи

    Можно назначить роль чтения и модуля записи для каждого пакета.