SQL 使用 Always Encrypted 功能时服务器报告服务器数据源连接失败
SQL Server Reporting Server data source connection fails when using Always Encrypted feature
我们正在使用 SQL 服务器中的 "Always Encrypted" 功能来加密一些列。加密在 MVC/SQL 端工作正常。我们遇到的唯一问题是 SQL 报告服务器。当数据源连接字符串为
时,能够 运行 报告
Server=mssqlserver;Database=MYDATABASE;Integrated Security=true
但是当我尝试 运行 来自 MVC 应用程序的报告时,它会自动将 Column Encryption Setting=enabled
添加到连接字符串
Server=mssqlserver;Database=MYDATABASE;Integrated Security=true;Column Encryption Setting=enabled
当我输入凭据并单击 'Test Connection' 时,它会引发错误
Keyword not supported: 'column encryption setting'
由于上述错误,无法连接到数据源'MYDATABASE'。尝试授予报告服务器服务帐户和使用的帐户权限
连接到数据库以访问 encrypt/decrypt 的密钥,但没有运气。我该如何解决这个问题?我们正在使用 SQL Server 2017。
此错误与您使用的 SSRS 版本有关 运行。在幕后,SSRS 使用 .net 框架连接到数据源。此版本不理解提供的关键字。
从屏幕截图看,它看起来像 SSRS 2008R2,它针对 .net 3.5。直到 4.6 (SSRS 2019) 才支持 Always Encrypted (AE)。据我所知,您无法更改 SSRS 的目标框架。
为了解决这个问题,我建议:
1. 安装支持 AE 的备用数据源提供程序(即 Microsoft ODBC Driver for SQL Server 17.4 or above),然后更新数据源的连接字符串以使用此
2. 升级SSRS至2019
希望对您有所帮助
Server=mssqlserver;Database=MYDATABASE;Integrated Security=true
但是当我尝试 运行 来自 MVC 应用程序的报告时,它会自动将 Column Encryption Setting=enabled
添加到连接字符串
Server=mssqlserver;Database=MYDATABASE;Integrated Security=true;Column Encryption Setting=enabled
当我输入凭据并单击 'Test Connection' 时,它会引发错误
Keyword not supported: 'column encryption setting'
由于上述错误,无法连接到数据源'MYDATABASE'。尝试授予报告服务器服务帐户和使用的帐户权限 连接到数据库以访问 encrypt/decrypt 的密钥,但没有运气。我该如何解决这个问题?我们正在使用 SQL Server 2017。
此错误与您使用的 SSRS 版本有关 运行。在幕后,SSRS 使用 .net 框架连接到数据源。此版本不理解提供的关键字。
从屏幕截图看,它看起来像 SSRS 2008R2,它针对 .net 3.5。直到 4.6 (SSRS 2019) 才支持 Always Encrypted (AE)。据我所知,您无法更改 SSRS 的目标框架。
为了解决这个问题,我建议: 1. 安装支持 AE 的备用数据源提供程序(即 Microsoft ODBC Driver for SQL Server 17.4 or above),然后更新数据源的连接字符串以使用此 2. 升级SSRS至2019
希望对您有所帮助