我的 SSRS 2017 报告管理器遇到了问题。我已经实现了此处找到的示例,除了门户网站(服务器很好)之外,它似乎都可以正常工作。我发现解决方案是服务用户需要对 web.config 具有写入权限才能从 RSReportingServices.config 复制机器密钥。
我该如何规避这个?我已尝试手动写入 web.config,但 rshostingservice 仍尝试同步密钥并失败。
我的 SSRS 2017 报告管理器遇到了问题。我已经实现了此处找到的示例,除了门户网站(服务器很好)之外,它似乎都可以正常工作。我发现解决方案是服务用户需要对 web.config 具有写入权限才能从 RSReportingServices.config 复制机器密钥。
我该如何规避这个?我已尝试手动写入 web.config,但 rshostingservice 仍尝试同步密钥并失败。
我希望能够规避写权限的需要。我通过授予运行 ssrs 的服务写入权限解决了我的问题。我使用下面的代码来授予所需的权限
try
{
var fileSecurity = File.GetAccessControl(Path);
var user = ServiceUserDetails();
fileSecurity.AddAccessRule(new FileSystemAccessRule(user, FileSystemRights.Write,
AccessControlType.Allow));
fileSecurity.AddAccessRule(new FileSystemAccessRule(user, FileSystemRights.Read,
AccessControlType.Allow));
fileSecurity.AddAccessRule(new FileSystemAccessRule(user, FileSystemRights.ReadAndExecute,
AccessControlType.Allow));
File.SetAccessControl(Path, fileSecurity);
}
catch
{
MessageBox.Show(@"Error",
$@"Unable to set permissions for {Path}. Please ensure service has write permission");
}