SQL Server 2008 を FIPS 140-2 準拠モードで使用する方法

文書翻訳 文書翻訳
文書番号: 955720 - 対象製品
すべて展開する | すべて折りたたむ

目次

はじめに

この資料では、Federal Information Processing Standard (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 準拠モード" とは、SQL Server 2008 において、暗号化またはハッシュされたデータを SQL Server 2008 に対してインポートまたはエクスポートするすべてのインスタンスで、アルゴリズムおよびハッシュ関数の FIPS 140-2 認定のインスタンスのみが使用されることと定義します。また、これらの用語は、SQL Server 2008 において FIPS 140-2 認定の暗号化モジュールで要求されるセキュリティ保護された方法でキーを管理することも意味します。 キー管理プロセスには、キー生成とキー格納の両方の機能も含まれます。

詳細

FIPS とは何ですか。

FIPS は Federal Information Processing Standards の略称です。 FIPS は 2 つの政府機関 (米国国立標準技術研究所 (NIST) および カナダ通信安全保障局 (CSE)) によって開発された規格です。 FIPS は、米国またはカナダの連邦政府で稼働する IT システムで使用することが推奨または要求される規格です。

FIPS 140-2 とは何ですか。

FIPS 140-2 は "暗号化モジュールのセキュリティ要件" について記述したものです。 使用可能な暗号化アルゴリズムとハッシュ アルゴリズム、および暗号化キーの生成方法と管理方法が規定されています。 一部のハードウェア、ソフトウェア、およびプロセスは、公認の認定ラボによる FIPS 140-2 認定を取得している場合があります。 その一部は、この資料で定義している意味で FIPS 140-2 準拠であるとも言えます。

"FIPS 140-2 準拠" のアプリケーションと "FIPS 140-2 認定" のアプリケーションとの違いは何ですか。

SQL Server 2008 は、FIPS 140-2 準拠アプリケーションとして動作するように構成できます。 これを行うには、FIPS 140-2 認定の暗号化サービス プロバイダを使用するオペレーティング システム、または認定済みの暗号化モジュールが提供されるオペレーティング システムで、SQL Server 2008 を実行する必要があります。 準拠と認定の違いはわずかなものではありません。 アルゴリズムは認定を取得できます。 FIPS 140-2 の承認済み一覧のアルゴリズムを使用するだけでは不十分であることを理解してください。 FIPS 140-2 認定のアルゴリズムのインスタンスを使用する必要があります。 認定には政府公認の評価ラボによるテストおよび証明が必要です。 Windows Server 2008、Windows Server 2003、および Windows XP には承認済みの暗号化モジュールが含まれています。それらのモジュール (アルゴリズムの特定のインスタンスを含む) はラボでテストされ、政府により認定されています。

どのようなアプリケーションが FIPS 140-2 準拠ですか。

暗号化またはハッシュを実行し、認定済みバージョンの Microsoft Windows 暗号化サービス プロバイダで実行されるアプリケーションは、承認済みアルゴリズムの認定済みインスタンスのみを使用している場合、すべて FIPS 140-2 準拠です。 これらのアプリケーションでは、Windows のキー機能を使用するか、アプリケーションのキー生成とキー管理の要件を満たすことで、キー生成とキー管理の要件にも準拠する必要があります。 また、FIPS 140-2 準拠のアプリケーションでは、FIPS 140-2 準拠ではないアルゴリズムまたはプロセスが許可される場合もあります。 たとえば、データがその暗号化された形式でアプリケーション内に残る (つまり、データがこの形式ではエクスポートされない) 場合、または FIPS 準拠のアルゴリズムを使用してデータがさらに暗号化 (ラップ) される場合には、FIPS 準拠ではないアルゴリズムを使用してデータが暗号化されることがあります。

つまり SQL Server 2008 は常に FIPS 140-2 準拠ということですか。

いいえ。SQL Server 2008 は FIPS 140-2 準拠モードで動作するように構成できるということです。

FIPS 140-2 認定の暗号化モジュールを使用するように SQL Server 2008 を構成する方法を教えてください。

オペレーティング システム要件

Windows Server 2008 ベースのコンピュータ、Windows Vista ベースのコンピュータ、Windows Server 2003 ベースのコンピュータ、または Windows XP ベースのコンピュータに SQL Server 2008 をインストールする必要があります。

Windows システムの管理要件

SQL Server 2008 では起動時に FIPS 設定を読み込むため、FIPS モードを有効にしてから SQL Server 2008 を起動する必要があります。 FIPS を有効にするには、次の手順を実行します。

Windows Server 2008 および Windows Vista
  1. 管理者資格情報を使用してコンピュータにログオンします。
  2. Windows Server 2008 を使用している場合は、[スタート] ボタンをクリックし、[ファイル名を指定して実行] をクリックします。次に、gpedit.msc と入力し、Enter キーを押します。 ローカル グループ ポリシー エディタが開きます。 Windows Vista ベースのコンピュータを使用している場合は、[スタート] ボタンをクリックし、[検索の開始] ボックスに gpedit.msc と入力して、Enter キーを押します。
  3. ローカル グループ ポリシー エディタで、[コンピュータの構成] ノードの下の [Windows の設定] をダブルクリックし、次に [セキュリティの設定] をダブルクリックします。
  4. [セキュリティの設定] ノードの下の [ローカル ポリシー] をダブルクリックし、[セキュリティ オプション] をクリックします。
  5. 詳細ウィンドウで、[システム暗号化: 暗号化、ハッシュ、署名のための FIPS 準拠アルゴリズムを使う] をダブルクリックします。
  6. [システム暗号化: 暗号化、ハッシュ、署名のための FIPS 準拠アルゴリズムを使うのプロパティ] ダイアログ ボックスで [有効] をクリックしてから、[OK] をクリックしてダイアログ ボックスを閉じます。
  7. ローカル グループ ポリシー エディタを終了します。
Windows Server 2003 および Windows XP
  1. 管理者資格情報を使用してコンピュータにログオンします。
  2. [スタート] ボタンをクリックし、[ファイル名を指定して実行] をクリックし、gpedit.msc と入力してから Enter キーを押します。
  3. [グループ ポリシー] (または [グループ ポリシー オブジェクト エディタ]) ウィンドウで、[コンピュータの構成] ノードの下の [Windows の設定] をダブルクリックし、次に [セキュリティの設定] をダブルクリックします。
  4. [セキュリティの設定] ノードの下の [ローカル ポリシー] をダブルクリックし、[セキュリティ オプション] をクリックします。
  5. 詳細ウィンドウで、[システム暗号化: 暗号化、ハッシュ、署名のための FIPS 準拠アルゴリズムを使う] をダブルクリックします。
  6. [システム暗号化: 暗号化、ハッシュ、署名のための FIPS 準拠アルゴリズムを使うプロパティ] ダイアログ ボックスで [有効] をクリックしてから、[OK] をクリックしてダイアログ ボックスを閉じます。
  7. [グループ ポリシー] (または [グループ ポリシー オブジェクト エディタ]) ウィンドウを閉じます。

SQL Server 2008 管理者向けの注意事項

  • SQL Server 2008 サービスの開始時に FIPS モードが有効になっていることが検出されると、SQL Server のエラー ログに次のメッセージが記録されます。
    Service Broker transport is running in FIPS compliance mode
    また、次のメッセージがアプリケーション ログに記録される場合があります。
    データベース ミラーリング トランスポートは FIPS 準拠モードで実行中です。
    サーバーが FIPS モードで動作していることを確認するには、これらのメッセージを検索します。
  • FIPS モードが有効になっている場合、暗号化プロセスでは、サービス間のダイアログ セキュリティを取得するために、Advanced Encryption Standard (AES) の FIPS 認定済みインスタンスが使用されます。 FIPS モードが無効になっている場合は RC4 が使用されます。
  • FIPS モードで Service Broker エンドポイントを構成する場合、Service Broker に対して "AES" を指定する必要があります。 エンドポイントが RC4 に構成されている場合、SQL Server でエラーが発生します。 そのため、トランスポート層は起動しません。

FIPS 140-2 準拠モードでは SQL Server 2008 はどのように動作しますか。

  • Windows の FIPS モードが有効であり、データを暗号化またはハッシュするかどうかとその方法をユーザーが選択できない場合には、SQL Server 2008 は FIPS 140-2 準拠モードで動作しています。 SQL Server 2008 では、CryptoAPI と、アルゴリズムの認定済みインスタンスのみが使用されます。
  • FIPS モードが有効であり、暗号化を使用するかどうかをユーザーが選択できる場合には、SQL Server 2008 は FIPS 140-2 準拠の暗号化のみを許可するか、すべての暗号化を許可しないかのいずれかです。
  • 開発者向けの重要な情報

    暗号化またはハッシュのために独自のコードを記述する場合、CryptoAPI のみを使用する必要があります。 FIPS 140-2 で許可されているアルゴリズムのみを指定する必要があります。 具体的には、暗号化には Triple Data Encryption Standard (3DES) または AES のみを使用します。また、ハッシュには SHA-1 のみを使用します。 それぞれの FIPS 140-2 認定のアルゴリズムについて、SQL Server 2008 では以下のキーワードを使用できます。
    • DESX (3 つのキーによる Triple DES)
    • Triple-DES (2 つのキーによる Triple DES)
    • TRIPLE_DES_3KEY (3 つのキーによる Triple DES)
    • TRIPLE_DES_2KEY (2 つのキーによる Triple DES)
    : SQL Server 2005 または SQL Server 2008 では、DESX を選択しても DESX アルゴリズムは提供されません。いずれの場合も、DESX を選択すると 3 つのキーによる Triple DES の認定済みインスタンスが提供されます。
  • 開発者向けの重要な情報

    SQL Server 2008 ではエンタープライズ キー管理 (EKM) 機能をサポートしており、別のサードパーティ製ハードウェア ストレージ モジュール (HSM) で暗号化キーの管理を行うことができます。 FIPS 140-2 準拠モードで EKM を使用するには、次の 2 つのうちいずれかの条件を満たす必要があります。
    • 外部の暗号化モジュールが FIPS 140-2 認定済みである。
    • 暗号化モジュールで使用される一部のアルゴリズムが FIPS 140-2 認定済みである。 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 では、Windows の FIPS モードはチェックされません。 準拠を維持するには、暗号化を選択しないでください。
  • SQL Server 2008 のほとんどの暗号化プロセスおよびハッシュ プロセスでは、既に FIPS 140-2 認定の暗号化モジュールが使用されています。 そのため、Windows で FIPS モードが有効になっている場合に FIPS 140-2 準拠モードでアプリケーションを実行しても、アプリケーションの使用やパフォーマンスにはほとんどまたはまったく影響がありません。

FIPS 140-2 に関する詳細はどこで参照できますか。

FIPS 規格とそのダウンロード方法の詳細については、次の NIST の Web サイトを参照してください。
http://csrc.nist.gov/cryptval/140-2.htm
他社テクニカル サポートのお問い合わせ窓口は、ユーザーの便宜のために提供されているものであり、 将来予告なしに変更されることがあります。 マイクロソフトは、掲載している情報に対して、いかなる責任も負わないものとします。

関連情報

FIPS 140-2 準拠モードで SQL Server 2005 を使用する方法の関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
920995 SQL Server 2005 Service Pack 1 以降のバージョンの SQL Server を FIPS 140-2 準拠モードで使用する方法

プロパティ

文書番号: 955720 - 最終更新日: 2009年6月24日 - リビジョン: 3.1
この資料は以下の製品について記述したものです。
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Standard
キーワード:?
sql2008relnoteconfiguration sql2008relnote kbhowto kbexpertiseadvanced kbinfo KB955720
"Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。"

フィードバック

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com