SqlConnection.RegisterColumnEncryptionKeyStoreProvidersOnConnection メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
暗号化キー ストア プロバイダーをインスタンスに SqlConnection 登録します。 この関数が呼び出された場合、静的 RegisterColumnEncryptionKeyStoreProviders(IDictionary<String,SqlColumnEncryptionKeyStoreProvider>) メソッドを使用して登録されたプロバイダーはすべて無視されます。 この関数は複数回呼び出すことができます。 これにより、ディクショナリの簡易コピーが行われ、設定後にアプリでカスタム プロバイダー リストを変更できなくなります。
public:
void RegisterColumnEncryptionKeyStoreProvidersOnConnection(System::Collections::Generic::IDictionary<System::String ^, Microsoft::Data::SqlClient::SqlColumnEncryptionKeyStoreProvider ^> ^ customProviders);
public void RegisterColumnEncryptionKeyStoreProvidersOnConnection (System.Collections.Generic.IDictionary<string,Microsoft.Data.SqlClient.SqlColumnEncryptionKeyStoreProvider> customProviders);
member this.RegisterColumnEncryptionKeyStoreProvidersOnConnection : System.Collections.Generic.IDictionary<string, Microsoft.Data.SqlClient.SqlColumnEncryptionKeyStoreProvider> -> unit
Public Sub RegisterColumnEncryptionKeyStoreProvidersOnConnection (customProviders As IDictionary(Of String, SqlColumnEncryptionKeyStoreProvider))
パラメーター
- customProviders
- IDictionary<String,SqlColumnEncryptionKeyStoreProvider>
カスタム列暗号化キー プロバイダーのディクショナリ
例外
null ディクショナリが指定されました。
または
ディクショナリ内の文字列キーが null または空でした。
または
SqlColumnEncryptionKeyStoreProviderディクショナリ内の値が null でした。
"MSSQL_" で始まるディクショナリ内の文字列キー。 このプレフィックスは、システム プロバイダー用に予約されています。
注釈
カスタム マスター キー ストア プロバイダーは、3 つの異なるレイヤーでドライバーに登録できます。 3 つの登録の優先順位は次のとおりです。
- コマンドごとの登録が空でないかどうかが確認されます。
- コマンドごとの登録が空の場合、接続ごとの登録が空でないかどうかが確認されます。
- 接続ごとの登録が空の場合、グローバル登録が確認されます。
登録レベルでキー ストア プロバイダーが見つかると、ドライバーはプロバイダーを検索するために他の登録にフォール バックしません。 プロバイダーが登録されていても、適切なプロバイダーがレベルで見つからない場合、確認された登録内に登録されているプロバイダーのみを含む例外がスローされます。
Windows Certificate Store、CNG Store、CSP に使用できる組み込みの列マスター キー ストア プロバイダーは、事前登録されています。
これにより、ディクショナリの簡易コピーが行われ、設定後にアプリでカスタム プロバイダー リストを変更できなくなります。