Роли служб Integration Services (службы SSIS)
SQL Server службы Integration Services включают три предопределенных роли уровня базы данных, db_ssisadmin
db_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.
Назначение пакетам ролей модулей чтения и записи
Можно назначить роль чтения и модуля записи для каждого пакета.