真正实现对报表服务器的匿名访问(Reporting Services)

时间:2021-07-26 07:27:28
真正实现对报表服务器的匿名访问(Reporting Services)
1,打开IIS管理器。在安装报表服务以后会有两个虚拟目录,默认时,一个为Reports,一个为ReportServer。其中Reports用来管理报表,如上传,设置数据源和权限,ReportServer用来发布和供用户访问报表。一般来讲报表展示时只访问ReportServer,所以做匿名访问时只要做ReportServer的匿名访问就可以了。


真正实现对报表服务器的匿名访问(Reporting Services)
2,点击右键,打开ReportServer的属性对话框,选择目录安全性。


真正实现对报表服务器的匿名访问(Reporting Services)
3,在目录安全性TAB页上编辑“身份验证和访问控制”项的,在打开的对话框中,选中“启用匿名访问”。这一步的目的是告诉IIS,凡是对ReportServer的访问都将用选中的匿名用户来进行验证。只验证身份是不够的,还要给选中的匿名用户分配权限。(也许报表服务不会给匿名用户分配默认的访问报表的权限,所以每次配置我都会选择一次,见第4步)

真正实现对报表服务器的匿名访问(Reporting Services)
4,打开报表管理器,如我的报表管理器的地址为http://192.1.6.120:500/reports,在打开的报表管理器中点击属性页。如图。


真正实现对报表服务器的匿名访问(Reporting Services)
5,在“新建角色分配”中新加一个用户,我加的用户是IUSR_***************,一般分配一个Browser的角色就可以了。分配完成以后点击“确定”。

    做到这一步其实并非像想像的那样可以实现匿名访问了。原因就在于第3步时,我选择了匿名访问时,密码框里出现“**********”,但是这个密码并不是我所在的计算机的IUSR_***************用户的真实密码。也就是说在IIS中改变IUSR_***************的密码并不能真实的改变IUSR_***************用户在计算中的密码。所以要执行匿名访问还要再做第6,7步。

真正实现对报表服务器的匿名访问(Reporting Services)
6,在“我的电脑”中点击右键,在属性菜单中选择“管理”,在用户这一个节点中找到“IUSR_***************”用户。


真正实现对报表服务器的匿名访问(Reporting Services)
7,给IUSR_***************用户设置密码。然后再将新设置的密码输入到IIS中“目录安全性”—>“身份验证”的密码框中。
这样再试一下重新访问报表服务器ReportServer,匿名访问就可以实现了。

后记:我以前在网上看到过怎样设置匿名访问的Blog,他甚至提到要在SQL Server中设置相关的权限,可是都不能实现匿名访问。也许因为他忘记指出给IUSR_***************设置密码这一环节。