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


Подписывание пакетов с помощью сертификатов

Изменения: 12 декабря 2006 г.

Пакет SQL Server 2005 Integration Services (SSIS) может быть подписан с помощью сертификата и настроен таким образом, чтобы он мог требовать у среды выполнения проверки подписи до загрузки пакета. Свойства пакета CheckSignatureOnLoad и CertificateObject указывают, должен ли быть проверен сертификат и какой сертификат должен быть использован для подписи пакета. Сертификат, используемый для подписи пакета, должен быть разрешен для подписи кода.

Службы Integration Services предоставляют значение реестра, которое можно использовать для управления политикой организации при загрузке подписанных и неподписанных пакетов. Это значение реестра также может управлять подписями без доверия для подписанных пакетов. В отношении состояния подписей, используемых для пакетов, значение реестра BlockedSignatureStates использует следующие определения:

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

Чтобы использовать значение реестра для предотвращения загрузки неподписанного пакета или пакета, который имеет неверную подпись или подпись без доверия, необходимо добавить значение BlockedSignatureStates типа DWORD в ключ реестра HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTS и задать ему значение 0, 1, 2 или 3.

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

Значение Описание

0

Нет административного ограничения.

1

Заблокировать недопустимые подписи.

Этот параметр не блокирует неподписанные пакеты.

2

Заблокировать недопустимые и ненадежные подписи.

Этот параметр не блокирует неподписанные пакеты, но блокирует самостоятельно сформированные подписи.

3

Блок недопустим, подписи не имеют доверия, пакеты не подписаны.

Это параметр также блокирует самостоятельно сформированные подписи.

Если значение реестра BlockedSignatureStates имеет тип DWORD и не равно 0, 1, 2 или 3, службы Integration Services интерпретируют это значение реестра как 3. Если значение BlockedSignatureStates имеет тип, отличный от DWORD, то службы Integration Services интерпретируют это значение реестра как значение типа DWORD, равное 0.

ms141174.note(ru-ru,SQL.90).gifПримечание.
Рекомендуется устанавливать значение реестра BlockedSignatureStates равным 3. Это обеспечивает наибольшую защиту от неподписанных пакетов или подписей, которые являются либо недействительными, либо ненадежными. Однако рекомендованное значение не может подходить для всех случаев. Дополнительные сведения о подписывании электронных ресурсов см. в разделе Введение в подписывание кода библиотеки MSDN.

Подписывание пакета

См. также

Основные понятия

Пакеты служб Integration Services
Вопросы безопасности для служб Integration Services

Справка и поддержка

Получение помощи по SQL Server 2005

Журнал изменений

Версия Журнал

12 декабря 2006 г.

Новое содержимое
  • Добавлены рекомендации для значения реестра BlockedSignatureStates.
  • Добавлена ссылка на раздел, содержащий дополнительные сведения об электронной подписи.

14 апреля 2006 г.

Новое содержимое
  • Добавлены сведения о значении реестра BlockedSignatureStates.
  • Добавлена ссылка на раздел руководства, описывающий процедуру, которая использует значение BlockedSignatureStates.