无法将始终加密的varbinary加密列转换为任何类型



我们正在尝试在 Sql 服务器 2016 上实现 Always Encrypted 。 我们要加密的列是 XML 类型,我们知道它不受支持,因此我们创建了一个 varbinary 列。我们已经设法加密了它。 现在,我们想使用以下查询将解密的数据从 varbinary 转换为 XML 类型:select top 10 convert(xml, datavalue2) FROM [TestDB].[dbo].[DataCalc]

对于此转换,我们收到一个错误:Explicit conversion from data type varbinary(max) encrypted with (encryption_type = 'DETERMINISTIC', encryption_algorithm_name = 'AEAD_AES_256_CBC_HMAC_SHA_256', column_encryption_key_name = '*******', column_encryption_key_database_name = 'TestDB') to xml is not allowed.

我们也尝试使用 nVarchar 和 Varchar 来做到这一点,但得到了同样的错误。

感谢

始终加密列的加密/解密由客户端应用程序通过启用始终加密的驱动程序完成。由于数据未在服务器上解密,因此无法访问 T-SQL 中的 CAST/CONVERT 所需的解密值。转换需要在客户端应用程序中完成,其中解密的值可用。

相关内容

  • 没有找到相关文章

最新更新