以前一直用的是SSRS 2008,刚换了SSRS 2017,折腾了半天终于把ReportServer部署好下,下面说下如何进行匿名访问,处理方法和SSRS 2008差不多,只是文件存放位置有些变动。
一、从网上下载一个匿名访问的dll文件,Microsoft.Samples.ReportingServices.AnonymousSecurity.dll,放到ReportServer/bin路径下面。SSRS 2017一般是这个目录(C:\Progam Files\Microsoft SQL Server Reporting Services\SSRS\ReportServer\bin)。
二、修改配置文件rsreportserver.config、rssrvpolicy.config和web.config,都是在C:\Program Files\Microsoft SQL Server Reporting Services\SSRS\ReportServer目录下
1、修改web.config,找到下面代码,注释掉
<authentication mode="Windows" />
<identity impersonate="true" />
改为下图所示:
2、修改 rssrvpolicy.config配置文件,找到下面代码
<CodeGroup
class="FirstMatchCodeGroup"
version="1"
PermissionSetName="Nothing">
<IMembershipCondition
class="AllMembershipCondition"
version="1"
/>
在后面加上以下代码,URL是之 前下载的匿名访问dll文件路径:
<CodeGroup
class="UnionCodeGroup"
version="1"
PermissionSetName="FullTrust"
Name="Private_assembly"
Description="This code group grants custom code full trust. ">
<IMembershipCondition
class="UrlMembershipCondition"
version="1"
Url="C:\Program Files\Microsoft SQL Server\MSRS11.MSSQLSERVER\Reporting Services\ReportServer\bin\Microsoft.Samples.ReportingServices.AnonymousSecurity.dll"
/>
</CodeGroup>
3、修改rsreportserver.config文件,修改两处,
第一处,找到代码段<AuthenticationTypes><Custom/></AuthenticationTypes>
<AuthenticationTypes>
<RSWindowsNTLM/>
</AuthenticationTypes>
改为:
<AuthenticationTypes>
<Custom/>
<!--<RSWindowsNTLM/>-->
</AuthenticationTypes>
第二处,找到以下代码段
<Security>
<Extension Name="Windows" Type="Microsoft.ReportingServices.Authorization.WindowsAuthorization, Microsoft.ReportingServices.Authorization"/>
</Security>
<Authentication>
<Extension Name="Windows" Type="Microsoft.ReportingServices.Authentication.WindowsAuthentication, Microsoft.ReportingServices.Authorization"/>
</Authentication>
在后面代加下面代码 :
<Security>
<Extension Name="None" Type="Microsoft.Samples.ReportingServices.AnonymousSecurity.Authorization, Microsoft.Samples.ReportingServices.AnonymousSecurity"/>
</Security>
<Authentication>
<Extension Name="None" Type="Microsoft.Samples.ReportingServices.AnonymousSecurity.AuthenticationExtension, Microsoft.Samples.ReportingServices.AnonymousSecurity"/>
</Authentication>
以前几处都改好后,重启SSRS服务,大功告成!