SSRS报告门户管理

时间:2016-07-26 20:08:36

标签: c# reporting-services

我正在开发一个C#实用程序,可帮助客户在其网站上发布SSRS报告。这是我的代码:

public void createFolder()
    {
        ReportingService2010 rs = new ReportingService2010();
        rs.Credentials = System.Net.CredentialCache.DefaultCredentials;

        // Create a custom property for the folder.
        Property newProp = new Property();
        newProp.Name = "Department";
        newProp.Value = "Finance";
        Property[] props = new Property[1];
        props[0] = newProp;

        string folderName = "Budget";

        try
        {
            rs.CreateFolder(folderName, "/", props);
            Console.WriteLine("Folder created: {0}", folderName);
        }

        catch (SoapException e)
        {
            Console.WriteLine(e.Detail.InnerXml);
        }
    }

我收到以下错误:

ErrorCode xmlns="http://www.microsoft.com/sql/reportingservices">rsAccessDenied</ErrorCode><HttpStatus xmlns="http://www.microsoft.com/sql/reportingservices">400</HttpStatus><Message xmlns="http://www.microsoft.com/sql/reportingservices">The permissions granted to user 'NT AUTHORITY\NETWORK SERVICE' are insufficient for performing this operation.</Message><HelpLink xmlns="http://www.microsoft.com/sql/reportingservices">https://go.microsoft.com/fwlink/?LinkId=20476&amp;EvtSrc=Microsoft.ReportingServices.Diagnostics.Utilities.ErrorStrings&amp;EvtID=rsAccessDenied&amp;ProdName=Microsoft%20SQL%20Server%20Reporting%20Services&amp;ProdVer=13.0.1601.5</HelpLink><ProductName xmlns="http://www.microsoft.com/sql/reportingservices">Microsoft SQL Server Reporting Services</ProductName><ProductVersion xmlns="http://www.microsoft.com/sql/reportingservices">13.0.1601.5</ProductVersion><ProductLocaleId xmlns="http://www.microsoft.com/sql/reportingservices">127</ProductLocaleId><OperatingSystem xmlns="http://www.microsoft.com/sql/reportingservices">OsIndependent</OperatingSystem><CountryLocaleId xmlns="http://www.microsoft.com/sql/reportingservices">1033</CountryLocaleId><MoreInformation xmlns="http://www.microsoft.com/sql/reportingservices"><Source>ReportingServicesLibrary</Source><Message msrs:ErrorCode="rsAccessDenied" msrs:HelpLink="https://go.microsoft.com/fwlink/?LinkId=20476&amp;EvtSrc=Microsoft.ReportingServices.Diagnostics.Utilities.ErrorStrings&amp;EvtID=rsAccessDenied&amp;ProdName=Microsoft%20SQL%20Server%20Reporting%20Services&amp;ProdVer=13.0.1601.5" xmlns:msrs="http://www.microsoft.com/sql/reportingservices">The permissions granted to user 'NT AUTHORITY\NETWORK SERVICE' are insufficient for performing this operation.</Message></MoreInformation><Warnings xmlns="http://www.microsoft.com/sql/reportingservices" />

有什么想法吗?

请注意,本练习的一个要点不仅仅是让它运作,而是知道它将在客户端运行,而不需要进行任何调整。

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

你的问题有点不清楚。听起来你不确定为什么你会收到权限错误。答案是你需要创建一个新角色。我假设(在您的评论之后)您的问题是如何使用C#来做到这一点。

您可以使用CreateRole() method,它仅适用于SSRS纯模式。如果在SharePoint集成模式下安装SSRS,则除了使用UI之外,不存在任何受支持的方法。

  

此方法抛出OperationNotSupportedSharePointMode异常   在SharePoint模式下调用时