在 SSRS 2016 标准版中尝试自定义文件夹安全性时,我们不断遇到错误。
首先,因为我们使用的是 SQL Server 2016 标准,所以 SSRS 站点当前与其关联的数据库位于同一服务器上。
当我们单击文件夹安全性中的“自定义安全性”按钮时,我们收到一条错误,指出“报表服务器上发生内部错误。有关更多详细信息,请参阅错误日志。”
下面是我们在转储文件中看到的错误。
Microsoft.ReportingServices.Portal.WebHost!library!3!07/27/2023-08:28:31:: e 错误:抛出 Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException:为 roleBrowser、Microsoft 找到的任务数量错误。 ReportingServices.Diagnostics.Utilities.InternalCatalogException:报表服务器上发生内部错误。有关更多详细信息,请参阅错误日志。;
Microsoft.ReportingServices.Portal.WebHost!library!3!07/27/2023-08:28:31:: e 错误:发生报表服务器转储。异常:Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException:报表服务器上发生内部错误。有关更多详细信息,请参阅错误日志。消息:,未处理的异常:False
Microsoft.ReportingServices.Portal.WebHost!library!3!07/27/2023-08:28:31:: e 错误:发生报表服务器唯一转储。异常:Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException:报表服务器上发生内部错误。有关更多详细信息,请参阅错误日志。消息:,未处理的异常:False
我们已尝试修复数据库、更改报告配置管理器中的设置,但到目前为止没有任何效果。唯一要添加的其他项目是我们之前尝试将相同的报告数据库连接到不同服务器上的 SSRS 实例......不知道我们无法使用 SQL Server 2016 标准版执行此操作。另外,另一台计算机上的 SSRS 实例是较新的 SSRS 版本,因此我们想知道这是否会扰乱我们现在尝试使用的 ReportServer 数据库中的某些内容。
显然,我们希望自定义安全按钮能够正常工作,以便我们根据需要设置文件夹的权限。
问题解决了!
我们最终从以前的备份中恢复了 ReportServer 和 ReportServerTempDB。然后我们执行DeleteEncryptedContent存储过程并重新启动SSRS服务。
瞧!该网站已恢复正常并具有完全的安全功能。