简体   繁体   English

SSRS 2008 R2升级-Web服务访问问题-未经授权的401

[英]SSRS 2008 R2 upgrade - webservice access issue - 401 unauthorized

we have upgraded to SSRS 2008 R2 from a SSRS 2008 instance. 我们已经从SSRS 2008实例升级到SSRS 2008 R2。 This was an upgrade in-place and so the reports and datasources were brought over to the new instance. 这是就地升级,因此报表和数据源已移至新实例。

from the application side (asp.net), we use the SSRS Webservice (ReportService2005.asmx) to makes calls such as ListChildren, GetPolicies to handle some application specific scenarios. 从应用程序端(asp.net),我们使用SSRS Web服务(ReportService2005.asmx)进行诸如ListChildren,GetPolicies之类的调用,以处理某些特定于应用程序的情况。

however, after the upgrade to R2, the web service call to ListChildren fails with a "401, unathorized" message. 但是,升级到R2之后,对ListChildren的Web服务调用失败,并显示“ 401,unororized”消息。

ReportingService2005 reportService = new ReportingService2005();

                reportService.Url = ConfigurationManager.AppSettings["ReportServerWebserviceUrl"];

                reportService.Credentials = new NetworkCredential(
                       ConfigurationManager.AppSettings["ReportViewerUser"],
                    ConfigurationManager.AppSettings["ReportViewerPassword"],
                    ConfigurationManager.AppSettings["ReportViewerDomain"]);
                reportService.PreAuthenticate = true;                

                SSRSReportServer.CatalogItem[] _reportItems = new SSRSReportServer.CatalogItem[] { };

_reportItems = reportService.ListChildren(ConfigurationManager.AppSettings["RootFolder"], true);

the code in the asp.net app is as above. asp.net应用程序中的代码如上所述。 the account being used in the NetworkCredential above is active and i have checked to make sure that the account is not locked out. 上面的NetworkCredential中使用的帐户处于活动状态,并且我已检查确保该帐户未锁定。

the account is setup as Content Manager on the SSRS folder that the code is trying to access. 将该帐户设置为该代码试图访问的SSRS文件夹上的Content Manager。

when i browse to http://server/reportserver/reportservice2005.asmx - i am able to see the wdsl for the webservice. 当我浏览到http://server/reportserver/reportservice2005.asmx时 -我能够看到Web服务的wdsl。

overall, this is working code, when pointed to a Sql2008 SSRS instance - and the 401 error shows up on the Sql2008 R2 instance. 总的来说,当指向Sql2008 SSRS实例时,这是有效的代码-并且Sql2008 R2实例上显示401错误。

any ideas? 有任何想法吗?

Is your web server set up to use delegation for your SQL2008 instance but not your R2 instance? 您的Web服务器是否已设置为对SQL2008实例而不是R2实例使用委托? Since you set the credentials on the web server this may not be an issue, but it is a fairly common problem. 由于您在Web服务器上设置了凭据,因此这可能不是问题,但这是一个相当普遍的问题。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM