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


Использование SQL Server 2016 и более поздних версий в режиме соответствия FIPS 140-2

В этой статье приведены инструкции ПО FIPS 140-2 и способы использования SQL Server2016 в режиме соответствия FIPS 140-2.

Исходная версия продукта: SQL Server 2016 и более поздних версий исходной базы знаний: 4014354

Примечание.

  • Термины "соответствие FIPS 140-2", "соответствие FIPS 140-2" и "режим соответствия FIPS 140-2" определяются здесь для использования и ясности. Эти термины не распознаются или не определены правительственными терминами. США и канадские правительства признают проверку криптографических модулей в соответствии со стандартами, такими как FIPS 140-2, вместо использования криптографических модулей в указанном или соответствующем порядке.

    В этой статье мы используем FIPS 140-2-совместимый, Соответствие ТРЕБОВАНИЯМ FIPS 140-2 и режим СООТВЕТСТВИЯ FIPS 140-2 означает, что в SQL Server 2016 и более поздних версиях используются только экземпляры алгоритмов и хэширования функций FIPS 140-2, в которых зашифрованные или хэшированные данные импортируются или экспортируются из SQL Server 2016 и более поздних версий. Кроме того, это означает, что серверы SQL Server 2016 и более поздних версий будут управлять ключами в безопасном режиме, так как требуется для криптографических модулей с проверкой FIPS 140-2. Процесс управления ключами также включает как создание ключей, так и хранилище ключей.

  • Мы используем "сертифицированный" здесь, чтобы означать, что экземпляр алгоритма проверен FIPS 140-2 или что операционная система содержит FIPS140-2 проверенных экземпляров алгоритмов.

Что такое FIPS?

Федеральный стандарт обработки информации (FIPS) — это стандарт, разработанный следующими двумя государственными органами:

  • Национальный институт стандартов и технологий (NIST) в США
  • Создание системы безопасности связи (CSE) в Канаде

Стандарты FIPS рекомендуется использовать в федеральных ИТ-системах, управляемых правительством, в США и Канаде.

Что такое FIPS 140-2?

FIPS 140-2 — это инструкция, которая называется "Требования к безопасности для криптографических модулей". Он указывает, какие алгоритмы шифрования и какие алгоритмы хэширования можно использовать, а также способ создания и управления ключами шифрования. Некоторые аппаратные, программные и процессы, содержащие алгоритмы, могут считаться сертифицированными FIPS 140-2, а также другими аппаратными, программными и процессами, которые вызывают правильные алгоритмы, могут считаться совместимыми с FIPS 140-2.

Какова разница между соответствием FIPS 140-2 и сертификацией FIPS 140-2?

SQL Server 2016 и более поздних версий можно настроить и запустить таким образом, который соответствует FIPS 140-2. Чтобы настроить SQL Server 2016 и более поздних версий таким образом, он должен работать в операционной системе, сертифицированной FIPS 140-2 или предоставляющей сертифицированные модули шифрования. Разница между соответствием и сертификацией не является тонкой. Алгоритмы могут быть сертифицированы. Недостаточно использовать алгоритм только потому, что он указан в утвержденных списках в FIPS 140-2. Вместо этого необходимо использовать экземпляр такого алгоритма, сертифицированного. Это означает, что экземпляр проверен правительством. Сертификация требует тестирования и проверки лабораторией оценки, утвержденной правительством США или Канады. Windows Server 2012 и более поздних версий, а также Windows 8 и более поздних версий содержат сертифицированный экземпляр каждого разрешенного алгоритма. Самое главное, вызов каждого из этих алгоритмов предоставляет только сертифицированный экземпляр.

Какие приложения могут соответствовать FIPS 140-2?

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

Соответствует ли SQL Server 2016 и более поздним версиям FIPS 140-2?

№ Sql Server 2016 и более поздних версий может быть совместим с FIPS 140-2, так как он может быть настроен и запущен таким образом, чтобы он использовал только экземпляры алгоритмов с сертификатом FIPS 140-2. Кроме того, эти экземпляры вызываются с помощью CryptoAPI или CGN для шифрования или хэширования в каждом экземпляре, где требуется fiPS 140-2compliance.

Как можно настроить SQL Server 2016 и более поздних версий для соответствия FIPS 140-2?

Требования к операционной системе

Необходимо установить SQL Server 2016 и более поздних версий на узле под управлением одного из следующих клиентов и серверов Windows.

Требования к системе администрирования Windows

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

  1. Войдите в Windows в качестве системного администратора Windows.
  2. Выберите Пуск.
  3. Выберите Панель управления.
  4. Выберите "Администрирование". (Возможно, вам придется переключиться на большие значки для следующего шага.)
  5. Выберите Локальная политика безопасности (Local Security Policy). Откроется окно "Локальные параметры безопасности".
  6. В области навигации выберите параметры безопасности локальных политик>.
  7. В области справа дважды щелкните системную криптографию: используйте алгоритмы, соответствующие FIPS для шифрования, хэширования и подписывания.
  8. В появившемся диалоговом окне нажмите кнопку "Применить".>
  9. Нажмите кнопку ОК.
  10. Закройте окно "Локальные параметры безопасности".

Требование администратора SQL Server

Если служба SQL Server (если конечная точка настроена для service Broker или зеркального отображения базы данных) обнаруживает, что режим FIPS включен при запуске, SQL Server записывает следующее сообщение в журнал ошибок SQL Server:

Транспорт Service Broker выполняется в режиме соответствия FIPS.

Кроме того, можно найти следующее сообщение, вошедшее в журнал событий Windows:

Транспорт зеркального отображения базы данных выполняется в режиме соответствия FIPS.

Вы можете убедиться, что сервер работает в режиме FIPS, найдите эти сообщения.

Примечание.

  • Для безопасности диалогов (между службами) процесс шифрования использует сертифицированный FIPS экземпляр AES, если включен режим FIPS. Если режим FIPS отключен, процесс шифрования по-прежнему использует AES.
  • При настройке конечной точки компонента Service Broker в режиме FIPS администратор должен указать AES для компонента service broker. Если конечная точка настроена на RC4, SQL Server создает ошибку. Поэтому транспортный слой не начнется.

Как работает SQL Server 2016 и более поздних версий в режиме соответствия FIPS 140-2?

  • С включенным режимом FIPS в Windows во всех областях, где пользователь не имеет выбора о том, следует ли шифровать или хэшировать, а также как это будет сделано, SQL Server 2016 и более поздних версий будет выполняться в соответствии с FIPS 140-2. (SQL Server 2016 и более поздних версий будет использовать CryptoAPI в Windows и будет использовать только сертифицированные экземпляры алгоритмов.)

  • С включенным режимом FIPS в Windows во всех областях, где пользователь может использовать шифрование, SQL Server 2016 и более поздних версий будет включать только шифрование FIPS 140-2 или не включать шифрование.

  • Важная информация для разработчиков программного обеспечения: во всех областях, где разработчик или пользователь пишет собственный код для шифрования или хэширования, им необходимо указать использовать только CryptoAPI (и, следовательно, только сертифицированные экземпляры) и указать только алгоритмы, разрешенные FIPS 140-2.Для официального списка NIST fiPS 140-2 утвержденных алгоритмов шифрования, См. приложения A, C и D в программе проверки криптографических модулей.

Каковы последствия работы SQL Server 2016 или более поздней версии в режиме, совместимом с FIPS 140-2?

  • При использовании более строгого шифрования может оказаться небольшим эффектом на производительность этих процессов, для которых допускается менее надежное шифрование, если процесс не работает в соответствии с FIPS 140-2.

  • Выбор шифрования для служб SSIS (UseEncryption=True) приведет к ошибке, которая указывает, что доступное шифрование несовместимо с соответствием FIPS и не допускается. Другими словами, шифрование процесса сообщения не выполняется.

  • При использовании шифрования вместе с устаревшими DTS шифрование не соответствует FIPS 140-2. Для DTS режим FIPS в Windows не установлен. Таким образом, это ответственность за то, что пользователь не выбирает шифрование, чтобы оставаться совместимым.

  • Так как большинство процессов шифрования и хэширования SQL Server 2016 и более поздних версий уже соответствуют требованиям FIPS 140-2, выполнение в полном соответствии (то есть с включенным режимом FIPS в Windows) не влияет на использование или производительность приложения.

Где можно узнать больше о FIPS 140-2?

Дополнительные сведения о FIPS 140-2 см. в разделе CMVP FIPS 140-2 Стандартов и документов.

Контактные данные сторонних организаций предоставлены в этой статье с целью помочь пользователям получить необходимую техническую поддержку. Эти данные могут быть изменены без предварительного уведомления. Корпорация Майкрософт не гарантирует точность этих сторонних контактных данных.