So what happened to the good old anonymous authentication is RS 2005?
The short answer is that it is
no longer supported. There were good technical reasons: anonymous accounts (the IUSER_* and IWAM_* accounts) are managed by windows security system. We decided not to trot into that space, nor did we want to add a new configuration setting for anonymous accounts, and having to manage the username and password of the anonymous user account. This may seem like a flop, but think about it from another angle: why would you want everyone on the internet to be able to view/update/overwrite your stuff on the report server? With so little said about best practices, I shouldn't really be telling people how to enable anonymous authentication. So here is the disclaimer again: DO NOT USE ANONYMOUS AUTH! NEVER USE IT IN PRODUCTION ENVIRONMENT! But if you are still undeterred, thinking you have a super secure environment and your servers are never exposed to malicious users, here is the solution for the reckless :). This is an adaptation of the RS Forms auth sample, so the easiest thing to do is to replace code in the sample with the code at the bottom of this blog post. Change authentication mode in rsreportserver.config to Custom: < Authentication> < AuthenticationTypes> < Custom/> < /AuthenticationTypes> < EnableAuthPersistence>true</EnableAuthPersistence> < /Authentication>
Change auth mode in report server and report manager web.config file to None. Set impersonation property to false: < authentication mode="None" /> < identity impersonate="false"/>
put the DLL Microsoft.Samples.ReportingServices.AnonymousSecurity.dll into the BIN folder of the report server (e.g. D:\Program Files\Microsoft SQL Server\MSRS10.MSSQLSERVER\Reporting Services\ReportServer\bin)
Configure code access security. Add the following into rssrvpolicy.config. Since my project had no strong name, I used url membership: <CodeGroup class="FirstMatchCodeGroup" version="1" PermissionSetName="FullTrust"> <IMembershipCondition class="AllMembershipCondition" version="1" /> < 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="D:\Program Files\Microsoft SQL Server\MSRS10.MSSQLSERVER\Reporting Services\ReportServer\bin\Microsoft.Samples.ReportingServices.AnonymousSecurity.dll" /> < /CodeGroup>
Restart report server and now you have anonymous authentication.
*Sacado de: http://blogs.msdn.com/b/jameswu/archive/2008/07/15/anonymous-access-in-sql-rs-2008.aspx con modificaciones realizadas por ACF Technologies