以编程方式获取Azure VM上托管的SSRS

时间:2014-10-27 14:50:22

标签: azure reporting-services

我正在将部署在Azure SQL报告上的SSRS迁移到Azure VM上托管的SSRS。我已经成功创建了一个虚拟机并部署了我的报告,可以从浏览器中查看。现在我的要求是我想以编程方式获得PDF或EXCEL格式的报告。这个要求在过去的一年里工作得很好,但是当我打电话给我时,我已经搬到了VM

ReportViewer.ServerReport.GetParameters()

方法它抛出异常401 UnAuthorized访问。我目前正在使用以下课程来验证我的用户以获取PDF或EXCEl

的报告
public class SSRSReportServerCredentials : IReportServerCredentials   
 {
         public SSRSReportServerCredentials()
        {
        }

        public WindowsIdentity ImpersonationUser
        {
            get { return null; }
        }

        public ICredentials NetworkCredentials
        {
            get { return null; }
        }

        public bool GetFormsCredentials(out Cookie authCookie, out string user, out string password, out string authority)
        {
            authCookie = null;
            user = sa;
            password = test;
            authority = SERVER.reporting.windows.net;
            return true;
        }
    }

任何人都可以帮我解决我的生产问题。

最好的问候, Zeeshan

1 个答案:

答案 0 :(得分:0)

对不起家伙太迟回复了,我已经解决了这个问题差不多2个月前但是没有时间与大家分享我的发现。我已经更改了凭证文件,如下所示,并调用参数化构造函数

public class SSRSReportServerCredentials:IReportServerCredentials     {         public SSRSReportServerCredentials()         {         }         public WindowsIdentity ImpersonationUser         {             get {return null; }         }         公共ICredentials NetworkCredentials         {             get {return new NetworkCredential(WebConfigurationManager.AppSettings [“userName”],WebConfigurationManager.AppSettings [“password”]); }         }

    public bool GetFormsCredentials(out Cookie authCookie, out string user, out string password, out string authority)
    {
        authCookie = null;
        user = null;
        password = null;
        authority = null;
        return false;
    }
}