[プロトコルの暗号化を設定する] オプションが有効になっている場合の SQL Server における証明書の使用

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

目次

概要

この資料では、クライアントまたはサーバーのいずれかで、Net-Library 暗号化を有効にする [プロトコル暗号化を設定する] オプションが有効になっている場合に、SQL Server で証明書の使用、検索、および検証がどのように行われるかについて説明します。

: この資料で説明されている内容のうち、SQL Server 2000 に適用されるものは、SQL Server 2005 に対しても適用されます。ただし、SQL Server 2005 では、[プロトコル暗号化を設定する] オプションの代わりに [ForceEncryption] オプションを使用します。[ForceEncryption] オプションの値を "はい" に設定すると、SQL Server のインスタンスに対する暗号化接続が有効になります。詳細については、SQL Server 2005 Books Online の「データベース エンジンへの暗号化接続を有効にする方法 (SQL Server 構成マネージャ)」を参照してください。

詳細

SQL Server における証明書の使用

SQL Server 2000 は、Net-Library 暗号化を制御するための [プロトコル暗号化を設定する] オプションをサポートしています。[プロトコル暗号化を設定する] オプションがオンになっている場合、SQL Server は、SSL (Secure Sockets Layer) を使用してクライアントと SQL Server サーバー間のすべての通信を暗号化します。SSL 暗号化は公的な証明機関から割り当てられた証明書がインストールされているコンピュータで実行されている SQL Server 2000 のインスタンスでのみ動作するため、証明書が必要です。 関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
276553 [HOWTO] 証明書サーバーのある環境で SQL Server 2000 のために SSL 暗号化を有効にする方法
SQL Server 2000 用に SSL 暗号化を有効にする方法の関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
316898 Microsoft 管理コンソールで SQL Server 2000 用に SSL 暗号化を有効にする方法
クライアントで SQL Server クライアント ネットワーク ユーティリティを使用して [プロトコル暗号化を設定する] オプションをオンにした場合、そのクライアントでは SQL Server への通信のみが暗号化されます。そのクライアントが、SQL Server を実行している他のコンピュータに接続するときには、通信の暗号化が試行されます。クライアントで [プロトコル暗号化を設定する] オプションがオンになっている場合、そのクライアントには下位互換性がありません。そのため、そのクライアントは、Microsoft SQL Server 6.5 または Microsoft SQL Server 7.0 に接続することはできません。クライアントの接続先となる SQL Server を実行しているコンピュータに証明書がインストールされていない場合、クライアントに次のエラー メッセージが表示されます。

暗号化は SQL Server でサポートされていません
そのため、クライアントが暗号化を要求する場合、SQL Server を実行しているコンピュータに証明書がインストールされている必要があります。SQL Server を実行しているコンピュータに証明書をインストールした後、証明書を使用するためには SQL Server を再起動する必要があります。証明書のインストール後に SQL Server を再起動しないと、暗号化が有効になっているクライアントは接続に失敗し、同じエラー メッセージが表示されます。

暗号化は SQL Server でサポートされていません
サーバーでサーバー ネットワーク ユーティリティを使用して [プロトコル暗号化を設定する] オプションをオンにした場合、すべてのクライアントと SQL Server 間の通信が暗号化されます。そのため、SQL Server を実行しているコンピュータに証明書がインストールされていない場合、または SQL Server で証明書を検証できない場合、SQL Server の起動は失敗します。SQL Server のエラー ログに次のテキストが出力されます。

2001-08-23 15:12:09.48 server 暗号化が要求されましたが、有効な資格証明が見つかりませんでした。SQL Server を終了しています。
2001-08-23 15:12:09.62 server エラー : 17826、レベル : 18、状態 : 1
2001-08-23 15:12:09.62 server 'SSNETLIB' をセットアップできませんでした。
2001-08-23 15:12:09.67 server エラー : 17059、レベル : 18、状態 : 0
2001-08-23 15:12:09.67 server オペレーティング システム エラー -1073723998:
2001-08-23 15:12:09.67 server Net-Library をロードできませんでした。
2001-08-23 15:12:09.74 server SQL Server は FRunCM スレッドを起動できませんでした。

SQL Server における証明書の検索

SQL Server 2000 golden release の場合、SQL Server は、証明書ストアから SQL Server コンピュータ名の完全修飾ドメイン名 (FQDN: Fully Qualified Domain Name) と同じ名前を持つ証明書を探します。フェールオーバー クラスタを使用して SQL Server を配置する場合は、フェールオーバー クラスタ上のすべてのノードに仮想サーバーの FQDN を持つサーバー証明書をインストールする必要があります。

Microsoft SQL Server 2000 Service Pack 1 以降では、次のレジストリ キーの Certificate という名前のバイナリ値が検索されます。
HKLM\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\SuperSocketNetLib
SQL Server 2005 を使用している場合、Certificate レジストリ キーは次のレジストリ サブキーの下にあります。

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL.x\MSSQLServer\SuperSocketNetLib


: MSSQL.x には、SQL Server インスタンスの対応する値が入ります。

証明書の値が存在しないか、長さが 0 の文字列に設定されている場合、証明書ストア内で、SQL Server コンピュータ名の FQDN と同じ名前を持つ証明書が検索されます。レジストリ値が設定されている場合は、その証明書が使用されます。

SQL Server における証明書の有効性の検証

  • 証明書の [拡張キー使用法] プロパティで Server Authentication が有効になっている必要があります。証明書がサーバー認証に使用されるかどうかを確認するには、[証明書] Microsoft 管理コンソール (MMC) スナップインを使用します。証明書名をダブルクリックし、[詳細設定] を選択します。[拡張キー使用法 (プロパティ)] をクリックし、値が次のようになっていることを確認します。
        Server Authentication(1.3.6.1.5.5.7.3.1). 
  • 証明書名が、SQL Server の FQDN、または (前述の) レジストリで設定されている値と同じであることを確認します。
  • 証明書は、SQL Server の起動アカウントでログオンしているときに、Certificates - Current User \Personal フォルダにインストールする必要があります。これにより、証明書は確実に SQL Server の起動アカウントの Personal Certificates フォルダに配置されます。SQL Server の起動アカウント以外のユーザー アカウントでログオンしている場合は、Certificates\Local Computer Personal Certificates フォルダに証明書を配置します。この方法により、適切でないユーザー アカウントで証明書が格納された場合の問題が解決されます。

    [現在のユーザー] フォルダを表示するには、次の手順を実行します。
    1. SQL Server の起動アカウントでログオンします。
    2. MMC の [証明書] スナップインを使用して、証明書の場所を確認します。

プロパティ

文書番号: 318605 - 最終更新日: 2006年2月6日 - リビジョン: 7.1
この資料は以下の製品について記述したものです。
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Express Edition
  • Microsoft SQL Server 2005 Workgroup Edition
キーワード:?
kbinfo KB318605
"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