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


Обзор безопасности (Integration Services)

Безопасность в службах SQL Server Integration Services состоит из нескольких уровней, которые обеспечивают богатую и гибкую среду безопасности. Эти уровни безопасности включают использование цифровых подписей, свойств пакета, ролей базы данных SQL Server и разрешений операционной системы. Большинство этих функций безопасности входят в категории удостоверений и управления доступом.

Особенности идентичности

Реализуя функции удостоверений в пакетах, вы можете достичь следующей цели:

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

Чтобы убедиться, что вы открываете и запускаете пакеты только из доверенных источников, сначала необходимо определить источник пакетов. Вы можете определить источник, подписав пакеты с помощью сертификатов. Затем при открытии или запуске пакетов можно проверить наличие и допустимость цифровых подписей с помощью Integration Services. Дополнительные сведения см. в разделе Определение источника пакетов с помощью цифровых подписей.

Функции управления доступом

Реализуя функции удостоверений в пакетах, вы можете достичь следующей цели:

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

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

  • Контроль доступа к содержимому пакетов, особенно конфиденциальных данных.

  • Управление доступом к пакетам и конфигурациям пакетов, хранящимся в SQL Server.

  • Управление доступом к пакетам и связанным файлам, таким как конфигурации, журналы и файлы контрольных точек, хранящиеся в файловой системе.

  • Управление доступом к службе Integration Services и информации о пакетах, которые она отображает в SQL Server Management Studio.

Управление доступом к содержимому пакетов

Чтобы ограничить доступ к содержимому пакета, можно зашифровать пакеты, задав свойство ProtectionLevel пакета. Это свойство можно задать на уровень защиты, который требуется пакету. Например, в среде разработки команды можно зашифровать пакет с помощью пароля, известного только членам группы, которые работают над пакетом.

При установке свойства ProtectionLevel пакета службы Integration Services автоматически обнаруживают конфиденциальные свойства и обрабатывают эти свойства в соответствии с указанным уровнем защиты пакета. Например, свойство ProtectionLevel для пакета устанавливается на уровень, который шифрует конфиденциальную информацию паролем. Для этого пакета службы Integration Services автоматически шифруют значения всех конфиденциальных свойств и не будут отображать соответствующие данные без правильного пароля.

Как правило, службы Integration Services идентифицируют свойства как конфиденциальные, если эти свойства содержат сведения, например пароль или строку подключения, или если эти свойства соответствуют переменным или узлам XML, созданным задачами. Учитывает ли службы Integration Services свойство, зависят от того, был ли разработчик компонента Служб Integration Services, например диспетчером соединений или задачей, назначить свойство конфиденциальным. Пользователи не могут добавлять в него свойства, а также удалять их из списка свойств, которые считаются конфиденциальными. При написании пользовательских задач, диспетчеров соединений или компонентов потока данных можно указать, какие свойства службы Integration Services должны рассматриваться как конфиденциальные.

Дополнительные сведения см. в руководстве "Управление доступом к конфиденциальным данным в пакетах".

Управление доступом к пакетам

Пакеты Integration Services можно сохранять в базу данных msdb экземпляра SQL Server или в файловую систему в виде XML-файлов с расширением .dtsx. Дополнительные сведения см. в разделе "Сохранение пакетов".

Сохранение пакетов в базе данных msdb

Сохранение пакетов в базе данных msdb помогает обеспечить безопасность на уровне сервера, базы данных и таблиц. В базе данных msdb пакеты служб Integration Services хранятся в таблице sysssispackages. Так как пакеты сохраняются в таблицах sysssispackages и sysdtspackages в базе данных msdb, пакеты автоматически создаются при резервном копировании базы данных msdb.

Пакеты SQL Server, хранящиеся в базе данных msdb, также можно защитить, применяя роли уровня базы данных Службы интеграции. Службы Integration Services включают три фиксированных роли уровня базы данных db_ssisadmin, db_ssisltduser и db_ssisoperator для управления доступом к пакетам. Роль читателя и роль писателя могут быть связаны с каждым пакетом. Можно также определить пользовательские роли уровня базы данных для использования в пакетах служб Integration Services. Роли можно реализовать только в пакетах, сохраненных в базе данных msdb в экземпляре SQL Server. Дополнительные сведения см. в разделе "Роли служб Integration Services (служба SSIS)".

Сохранение пакетов в файловой системе

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

Управление доступом к файлам, используемым пакетами

Пакеты, настроенные для использования конфигураций, контрольных точек и ведения журнала, создают сведения, хранящиеся за пределами пакета. Эти сведения могут быть конфиденциальными и должны быть защищены. Файлы контрольных точек можно сохранить только в файловой системе, но конфигурации и журналы можно сохранить в файловой системе или в таблицы в базе данных SQL Server. Конфигурации и журналы, сохраненные в SQL Server, подвержены безопасности SQL Server, но информация, записанная в файловую систему, требует дополнительной безопасности.

Дополнительные сведения см. в разделе "Доступ к файлам", используемым пакетами.

Безопасное хранение конфигураций пакетов

Конфигурации пакетов можно сохранить в таблице в базе данных SQL Server или файловой системе.

Конфигурации можно сохранить в любой базе данных SQL Server, а не только в базе данных msdb. Таким образом, можно указать, какая база данных служит в качестве репозитория конфигураций пакетов. Можно также указать имя таблицы, содержащей конфигурации, и службы Integration Services автоматически создают таблицу с правильной структурой. Сохранение конфигураций в таблице позволяет обеспечить безопасность на уровне сервера, базы данных и таблицы. Кроме того, конфигурации, сохраненные в SQL Server, автоматически создаются при резервном копировании базы данных.

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

Дополнительные сведения о конфигурациях см. в разделе "Конфигурации пакетов".

Управление доступом к службе Integration Services

СРЕДА SQL Server Management Studio использует службу SQL Server для перечисления сохраненных пакетов. Чтобы запретить несанкционированным пользователям просматривать сведения о пакетах, хранящихся на локальных и удаленных компьютерах, и таким образом обучать частную информацию, ограничить доступ к компьютерам, работающим под управлением службы SQL Server.

Дополнительные сведения см. в разделе "Доступ к службе Служб Integration Services".

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

См. также

SQL Server Integration Services