【问题标题】:SQL Server Reporting Server data source connection fails when using Always Encrypted feature使用 Always Encrypted 功能时 SQL Server Reporting Server 数据源连接失败
【发布时间】:2020-02-04 14:49:35
【问题描述】:

我们正在使用 SQL Server 中的“始终加密”功能来加密一些列。加密在 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

当我输入凭据并单击“测试连接”时,它会引发错误

不支持关键字:“列加密设置”

由于上述错误,它无法连接到数据源“MYDATABASE”。尝试向报告服务器服务帐户和使用的帐户授予权限 连接到数据库以访问密钥以加密/解密但没有运气。我该如何解决这个问题?我们使用的是 SQL Server 2017。

【问题讨论】:

    标签: sql-server encryption always-encrypted


    【解决方案1】:

    此错误与您正在运行的 SSRS 版本有关。在幕后,SSRS 使用 .net 框架连接到数据源。此版本不理解提供的关键字。

    从截图来看,它看起来像 SSRS 2008R2,它的目标是 .net 3.5。直到 4.6 (SSRS 2019) 才支持始终加密 (AE)。据我所知,您无法更改 SSRS 的目标框架。

    要解决这个问题,我建议: 1. 安装支持 AE 的备用数据源提供程序(即 Microsoft ODBC Driver for SQL Server 17.4 或更高版本),然后更新数据源的连接字符串以使用此 2.升级SSRS到2019

    希望对你有帮助

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-25
      相关资源
      最近更新 更多