【发布时间】:2016-11-18 17:31:16
【问题描述】:
我有以下代码从我的 SSRS 服务器返回报告,然后我将路径存储到每个单独的列表,允许用户在应用程序中运行它们。 以下工作正常。
NetworkCredential serviceCredentials = new NetworkCredential()
{
UserName = username,
SecurePassword = EncryptionManager.DecryptToSecureString(password),
Domain = domain
};
reports = new ObservableCollection<object>(reportsManager.FindReports(reportsWebService, reportsFolderName, serviceCredentials));
//FindReports
ReportingService2005 rs = new ReportingService2005();
rs.Url = reportsWebService;
rs.Credentials = serviceCredentials;
CatalogItem[] catalogItems = rs.ListChildren(@"/" + reportsFolderName, false);
但是问题是当用户选择一个报告来查看它时会显示以下错误:
授予用户的权限不足以执行此操作 操作。
我知道快速解决此问题的方法是将用户域添加到报告服务器上的安全部分,但这不合适。
我的问题是我可以提供凭据以允许指定用户访问报告文件夹是否可以传递此信息以便用户可以运行报告?
我的每个报告都使用内置的连接字符串NOT windows 身份验证。
编辑:我正在使用 Reporting WinForms。
【问题讨论】:
-
我认为需要将 ASPNet 用户或 IUser 帐户添加到报表服务器以允许访问。
-
我在网络凭据中传递的用户已添加到报表服务器上,但未添加尝试连接的用户。
标签: c# winforms reporting-services ssrs-2012