レジストリの設定

対象者:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analyticsアナリティクスプラットフォームシステム(PDW)Microsoft FabricにおけるSQLデータベース

OLE DB ドライバーのダウンロード

OLE DB Driver for SQL Server のメジャー バージョンごとに、専用のレジストリ設定のセットが使用されます。 以下はバージョン固有のベース レジストリ キーです (後で {base_registry_key} として参照されます)。

  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\SNI{major_version}.0
  • HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\MSSQLServer\Client\SNI{major_version}.0

ドライバーのメジャー バージョンに応じて、上記のキーの {major_version} プレースホルダーを置き換えます。たとえば、HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\SNI19.0 はバージョン 19.x.x の基本キーです。

暗号化と証明書の検証

[Force protocol encryption]

暗号化は、Value レジストリ エントリの {base_registry_key}\GeneralFlags\Flag1 フィールドを使って制御できます。
有効な値は、012 です (それぞれ、OptionalMandatoryStrict の接続プロパティとキーワードの値にマップされます)。 OLE DB ドライバーでは、レジストリと接続プロパティ/キーワード設定の間で最も安全なオプションが選択されます。

[サーバー証明書を信頼する]

証明書の検証は、Value レジストリ エントリの {base_registry_key}\GeneralFlags\Flag2 フィールドを使って制御できます。
有効な値は 0 または 1です。 OLE DB ドライバーでは、レジストリと接続プロパティ/キーワード設定の間で最も安全なオプションが選択されます。 つまり、レジストリ/接続設定の少なくとも 1 つでサーバー証明書の検証が有効になっていれば、ドライバーによってサーバー証明書が検証されます。

TCP キープアライブとプロトコル順序のレジストリ プロパティ

MSOLEDBSQL ドライバー バージョン 19.1 以降では、プロトコル順序、TCP キープアライブ、キープアライブ間隔を次のレジストリ エントリで調整することができます。

  • プロトコル順序: {base_registry_key}\ProtocolOrder
  • TCP キープアライブ: {base_registry_key}\tcp\Property2\Value
  • TCP キープアライブ間隔: {base_registry_key}\tcp\Property3\Value

プロトコル順序プロパティは、サポートされるプロトコルを表す null 終端文字列の順序付きシーケンスです。 既定のプロトコル順序値は sm tcp np です。

TCP キープアライブ パラメーター (ミリ秒単位) を使うと、KEEPALIVE パケットを送信してアイドル状態の接続が壊れていないかどうかを TCP が確認する頻度を制御できます。 既定値は 30,000 ミリ秒です。

キープアライブ間隔パラメーター (ミリ秒単位) を使うと、応答を受信するまで KEEPALIVE パケットを再送信する間隔を指定できます。 既定値は 1,000 ミリ秒です。