Инструкции по использованию SQL Server 2008 в режиме, совместимом с FIPS 140-2

В этой статье описывается FIPS 140-2 и использование SQL Server 2008 в режиме, совместимом с FIPS 140-2.

Оригинальная версия продукта: SQL Server
Оригинальный номер базы знаний: 955720

Введение

В этой статье рассматриваются инструкции По федеральному стандарту обработки информации (FIPS) 140-2 и как использовать Microsoft SQL Server 2008 в режиме, совместимом с FIPS 140-2.

Примечание.

Термины "FIPS 140-2-совместимый", "соответствие FIPS 140-2" и "fips 140-2-совместимый режим" определены здесь для использования и ясности. Эти термины не являются распознаваемыми или определенными государственными терминами. Правительства США и Канады признают проверку криптографических модулей на соответствие стандартам, таким как FIPS 140-2, а не их использование указанным или соответствующим образом. В этой статье мы определяем "fips 140-2-совместимый", "соответствие FIPS 140-2" и "fips 140-2-совместимый режим", чтобы означать, что SQL Server 2008 использует только проверенные FIPS 140-2 экземпляры алгоритмов и хэш-функций во всех экземплярах, в которых зашифрованные или хэшированные данные импортируются или экспортируются в SQL Server 2008. Кроме того, эти термины означают, что SQL Server 2008 году будет безопасно управлять ключами в соответствии с требованиями криптографических модулей, проверенных FIPS 140-2. Процесс управления ключами также включает в себя функции создания ключей и хранилища ключей.

Что такое FIPS

FIPS означает Федеральные стандарты обработки информации. FIPS — это стандарты, разработанные двумя государственными органами. Одним из них является Национальный институт стандартов и технологий в США. Другой — это Управление по обеспечению безопасности связи в Канаде. FIPS — это стандарты, которые либо рекомендуются, либо разрешены для использования в федеральных (США или канадских) управляемых правительством ИТ-системах.

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

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

В чем разница между приложением, совместимым с FIPS 140-2, и приложением, которое имеет значение FIPS 140-2-validated?

Вы можете настроить SQL Server 2008 для запуска в качестве приложения, совместимого с FIPS 140-2. Для этого необходимо запустить SQL Server 2008 в операционной системе, которая использует проверенный поставщик служб шифрования FIPS 140-2 или предоставляет криптографический модуль, который был проверен. Разница между соответствием и проверкой не является незначительной. Алгоритмы можно проверить. Поймите, что недостаточно использовать алгоритмы из утвержденных списков в FIPS 140-2. Необходимо использовать экземпляры алгоритмов, проверенных FIPS 140-2. Для проверки требуется тестирование и проверка в утвержденной правительством лаборатории оценки. Windows Server 2008, Windows Server 2003 и Windows XP содержат утвержденные криптографические модули, а модули, включая конкретные экземпляры алгоритмов, были протестированы в лаборатории и проверены для государственных организаций.

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

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

Означает ли это, что SQL Server 2008 всегда соответствует FIPS 140-2

Нет. Это означает, что SQL Server 2008 можно настроить для работы в режиме, совместимом с FIPS 140-2.

Как настроить SQL Server 2008 для использования криптографического модуля, проверенного FIPS 140-2

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

    Необходимо установить SQL Server 2008 на компьютерах под управлением Windows Server 2008, Windows Vista, Windows Server 2003 или Windows XP.

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

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

    • Для Windows Server 2008 и Windows Vista

      1. Используйте учетные данные администратора для входа на компьютер.
      2. Если вы используете Windows Server 2008, нажмите кнопку Пуск, нажмите кнопку Выполнить, введите gpedit.msc и нажмите клавишу ВВОД. Откроется локальная групповая политика Редактор. Если вы используете компьютер под управлением Windows Vista, нажмите кнопку Пуск, введите gpedit.msc в поле Начать поиск и нажмите клавишу ВВОД.
      3. В локальной групповая политика Редактор дважды щелкните Параметры Windows в узле Конфигурация компьютера, а затем дважды щелкните Параметры безопасности.
      4. В узле Параметры безопасности дважды щелкните Локальные политики, а затем выберите Пункт Параметры безопасности.
      5. В области сведений дважды щелкните Системная криптография: используйте совместимые с FIPS алгоритмы для шифрования, хэширования и подписывания.
      6. В диалоговом окне Системное шифрование: использование совместимых с FIPS алгоритмов для шифрования, хэширования и подписывания щелкните Включено, а затем нажмите кнопку ОК , чтобы закрыть диалоговое окно.
      7. Закройте локальный групповая политика Редактор.
    • Для Windows Server 2003 и Windows XP

      1. Используйте учетные данные администратора для входа на компьютер.
      2. Нажмите кнопку Пуск, нажмите кнопку Выполнить, введите gpedit.msc и нажмите клавишу ВВОД.
      3. В окне групповая политика дважды щелкните Параметры Windows в узле Конфигурация компьютера, а затем дважды щелкните Параметры безопасности.
      4. В узле Параметры безопасности дважды щелкните Локальные политики, а затем выберите Пункт Параметры безопасности.
      5. В области сведений дважды щелкните Системная криптография: используйте совместимые с FIPS алгоритмы для шифрования, хэширования и подписывания.
      6. В диалоговом окне Системное шифрование: использование совместимых с FIPS алгоритмов для шифрования, хэширования и подписывания щелкните Включено, а затем нажмите кнопку ОК , чтобы закрыть диалоговое окно.
      7. Закройте окно групповая политика.

Заметки администратора SQL Server 2008 г.

  • Когда служба SQL Server 2008 обнаруживает, что при запуске включен режим FIPS, SQL Server 2008 записывает в журнал ошибок SQL Server следующее сообщение:

    Транспорт компонента Service Broker работает в режиме соответствия FIPS

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

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

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

  • Чтобы обеспечить безопасность диалога между службами, процесс шифрования будет использовать сертифицированный fips экземпляр расширенного стандарта шифрования (AES), если включен режим FIPS. Если режим FIPS отключен, процесс шифрования использует RC4.

  • При настройке конечной точки компонента Service Broker в режиме FIPS необходимо указать AES для компонента Service Broker. Если конечная точка настроена для rc4, SQL Server создает ошибку. Таким образом, транспортный слой не запускается.

Как работает SQL Server 2008 в режиме, совместимом с FIPS 140-2

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

  • Если включен режим FIPS и пользователь может выбрать, следует ли использовать шифрование, SQL Server 2008 либо разрешает шифрование, совместимое с FIPS 140-2, либо не разрешает шифрование.

  • Важная информация для разработчиков

    При написании собственного кода для шифрования или хэширования необходимо использовать только CryptoAPI. Необходимо указать только алгоритмы, разрешенные FIPS 140-2. В частности, используйте для шифрования только стандарт тройного шифрования данных (3DES) или AES и только SHA-1 для хэширования. В SQL Server 2008 можно использовать следующие ключевые слова для соответствующих алгоритмов, проверенных FIPS 140-2:

    • DESX (трехключековые тройные DES)
    • Triple-DES (двухключеричное тройное DES)
    • TRIPLE_DES_3KEY(трехключеричное тройное DES)
    • TRIPLE_DES_2KEY(два ключа тройной DES)

    Примечание.

    Выбор DESX не предоставляет алгоритм DESX в SQL Server 2005 или в SQL Server 2008. В обоих случаях при выборе DESX выполняется проверка экземпляра трехключеричной функции DES.

  • Важная информация для разработчиков

    SQL Server 2008 поддерживает функцию управления корпоративными ключами (EKM), которая позволяет управлять криптографическими ключами в отдельном аппаратном модуле хранения (HSM). Чтобы работать в режиме, совместимом с FIPS 140-2, и использовать EKM, должно выполняться одно из следующих двух условий:

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

    Кроме того, данные, которые будут зашифрованы или расшифрованы внешним криптографическим модулем, должны передаваться в зашифрованном виде с помощью экземпляра, проверенного FIPS 140-2.

Каков эффект запуска SQL Server 2008 в режиме, совместимом с FIPS 140-2

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

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

  • Использование шифрования вместе с устаревшими службами преобразования данных (DTS) не соответствует FIPS 140-2.. Для DTS режим FIPS в Windows не установлен. Чтобы обеспечить соответствие требованиям, не следует выбирать шифрование.

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

Стороннее заявление об отказе от ответственности

Заявление об отказе от ответственности за сведения о продуктах сторонних производителей

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