SQL Server 2016 Reporting Services无权限访问本地报表服务器求助
SQL Server 2016 SSRS恢复数据库后Web Portal权限错误排查方案
检查Reporting Services服务账户权限
打开SQL Server Reporting Services配置管理器,确认服务账户是否拥有ReportServer、ReportServerTempDB这两个报表数据库的db_owner权限。数据库恢复后原权限大概率丢失,需手动添加:- 打开SSMS连接数据库引擎,找到这两个库,右键→属性→权限→添加服务账户,授予db_owner角色。
- 同时确认服务账户属于本地管理员组,且拥有SSRS安装目录(默认
C:\Program Files\Microsoft SQL Server Reporting Services\SSRS)的读写权限。
重置SSRS加密密钥
恢复数据库后加密密钥不匹配会直接导致权限验证失败。在配置管理器切换到「加密密钥」选项卡,点击“删除”(注意:删除后之前存储的数据源密码会丢失,后续需重新配置),再重新生成密钥。操作完成后重启Reporting Services服务。配置Web Portal站点级权限
数据库里加了sysadmin不代表Web Portal本身权限同步了:- 用配置管理器里的Web Portal URL,以本地管理员身份打开浏览器,右上角点“设置”→“站点设置”→“安全性”,添加你的域账户,授予系统管理员和系统用户权限。
- 如果连设置页面都进不去,直接改数据库加权限:打开ReportServer库,执行以下SQL:
执行后刷新Web Portal页面。INSERT INTO dbo.Policy(UserID, RoleID) SELECT u.UserID, r.RoleID FROM dbo.Users u JOIN dbo.Roles r ON r.Name = 'System Administrator' WHERE u.UserName = '你的域账户(格式:DOMAIN\Username)'
调整浏览器身份验证设置
打开浏览器Internet选项→安全→本地Intranet→站点→高级,把Web Portal URL加进去;再进“自定义级别”,确保「用户验证→登录」设为“自动使用当前用户名和密码登录”。关闭所有浏览器窗口后重新用域账户打开。检查ReportServer的Web.config配置
找到SSRS安装目录下的ReportServer\Web.config,确认身份验证节点是Windows模式:<authentication mode="Windows" />同时确认存在
<identity impersonate="true" />,没有的话手动添加。
内容的提问来源于stack exchange,提问作者CrescentDream
相关产品推荐
相关产品推荐

