SqlColumnEncryptionKeyStoreProvider.DecryptColumnEncryptionKeyAsync 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
非同步解密欄位加密金鑰的指定加密值。 加密後的值預期會使用欄位主金鑰、指定的金鑰路徑及指定的演算法進行加密。
public virtual System.Threading.Tasks.Task<byte[]> DecryptColumnEncryptionKeyAsync(string masterKeyPath, string encryptionAlgorithm, byte[] encryptedColumnEncryptionKey, System.Threading.CancellationToken cancellationToken = default);
abstract member DecryptColumnEncryptionKeyAsync : string * string * byte[] * System.Threading.CancellationToken -> System.Threading.Tasks.Task<byte[]>
override this.DecryptColumnEncryptionKeyAsync : string * string * byte[] * System.Threading.CancellationToken -> System.Threading.Tasks.Task<byte[]>
Public Overridable Function DecryptColumnEncryptionKeyAsync (masterKeyPath As String, encryptionAlgorithm As String, encryptedColumnEncryptionKey As Byte(), Optional cancellationToken As CancellationToken = Nothing) As Task(Of Byte())
參數
- masterKeyPath
- String
欄位主鍵路徑。 路徑格式是針對金鑰儲存提供者實作而定(例如憑證儲存的拇指印,或 Azure Key Vault 的金鑰識別碼 URL)。
- encryptionAlgorithm
- String
加密演算法名稱。 例如: RSA_OAEP 。
- encryptedColumnEncryptionKey
- Byte[]
加密欄位加密金鑰。
- cancellationToken
- CancellationToken
一個取消非同步操作的標記。
傳回
任務完成後會回傳 Byte 代表解密欄加密金鑰的陣列。
備註
預設實作會先檢查 , cancellationToken 若已請求取消,則回傳已取消的任務。 否則,它會呼叫同步 DecryptColumnEncryptionKey(String, String, Byte[]) 方法,並將結果包裝成完成的任務。 如果同步方法拋出異常,例外會被捕捉,並回傳錯誤任務,而非同步拋出。
執行 I/O(例如呼叫 Azure Key Vault)的衍生類別,應該以真正非同步的實作覆蓋此方法,並尊重取消令牌。