【发布时间】:2011-06-20 23:49:53
【问题描述】:
我有以下问题。我正在使用 Reporting Services 2005 创建一些报告。我从我的自定义程序集中调用方法,当我的方法如下时它工作正常:
public static string TestMethod() {
return "test"; }
但是,当返回“测试”时;替换为调用第三方 Web 服务的代码,我的 RS 报告中没有返回任何内容。我什至无法将我的异常记录到 EventLog(可能是出于安全原因)。 I 类由以下语句修饰:
[System.Web.AspNetHostingPermission(SecurityAction.Assert, Level = System.Web.AspNetHostingPermissionLevel.Unrestricted)]
此外,为了调用 Web 服务,我在自定义程序集中添加了以下内容:
string serviceUri = "http://externallink/Default.asmx";
WebPermission p = new WebPermission(NetworkAccess.Accept, serviceUri);
p.Assert();
这也无济于事。我的自定义程序集中抛出的错误如下:
请求类型的许可 'System.Net.WebPermission,系统, 版本=2.0.0.0,文化=中性, PublicKeyToken=b77a5c561934e089' 失败
有人可以帮帮我吗?
编辑1: 我发现报告服务使用名为:RosettaSrv 的自定义信任级别。自定义策略在 rssrvpolicy.config 中设置。当我将信任级别更改为完全时,一切正常。但是我不想指定完全信任,只是可能访问自定义 Web 服务,我该怎么做?
【问题讨论】:
标签: web-services reporting-services