调用SSRS报表服务器就问:“需要身份验证”窗口(Calling SSRS Report Serve

2019-07-30 09:58发布

我刚开始在SSRS工作,我有一个很奇怪的问题,即当我打电话报表服务器URL即本地主机/报告

此URL需要输入用户名和密码验证窗口。 像这样。

如果我在这种情况下提交本地系统用户帐户信息会出现我报告,我们希望服务器屏幕。 像这样。

我创建了一个演示网络的应用程序,并在Default.aspx页,我使用ReportViewer显示报告和配置。 这里是代码,我使用Default.aspx

<rsweb:ReportViewer ID="ReportViewer1" runat="server" Width="100%">
</rsweb:ReportViewer>

Default.aspx.cs页面

    ReportViewer1.ProcessingMode = ProcessingMode.Remote;
    IReportServerCredentials irsc = new CustomReportCredentials("username", "password", "India");
    ReportViewer1.ServerReport.ReportServerCredentials = irsc;
    ReportViewer1.ServerReport.ReportServerUrl = new Uri("http://localhost/Reports");
    ReportViewer1.ServerReport.ReportPath = "/SSRS_Demo/Report_CaseMain";
    ReportViewer1.ServerReport.Refresh(); 

CustomReportCredentials.cs

public class CustomReportCredentials : IReportServerCredentials
    {
        // local variable for network credential.
        private string _UserName;
        private string _PassWord;
        private string _DomainName;
        public CustomReportCredentials(string UserName, string PassWord, string DomainName)
        {
            _UserName = UserName;
            _PassWord = PassWord;
            _DomainName = DomainName;
        }
        public WindowsIdentity ImpersonationUser
        {
            get
            {
                return null;  // not use ImpersonationUser
            }
        }
        public ICredentials NetworkCredentials
        {
            get
            {
                // use NetworkCredentials
                return new NetworkCredential(_UserName, _PassWord, _DomainName);
            }
        }
        public bool GetFormsCredentials(out Cookie authCookie, out string user, out string password, out string authority)
        {
            // not use FormsCredentials unless you have implements a custom autentication.
            authCookie = null;
            user = password = authority = null;
            return false;
        }
    }

而且,当我在这种情况下运行此web的应用程序它将给我一个错误,即

请帮我我该怎么办,以解决这些所有错误.....

Answer 1:

很长的R&d后,我得到了一个解决方案。 我使用错误的SSRS服务URL。 我使用localhost/Reports ,但实际上报表服务器URL的SSRS为localhost/ReportServer 。 因此,通过使用这种新的报告服务的URL我得到了问题的解决。



Answer 2:

点击您在localhost / Reports报表,然后转到该报告的财产。 在右手边有“ 数据源 ”上点击。 然后仄单选按钮“ 安全存储在报表服务器证书 ”,在这里你需要指定你的SQL服务器凭据,即用户名和密码



Answer 3:

一个时间活动:一旦你点击报告会再次询问用户名和密码,第一次,为了克服这种遵循以下指导原则。

(一)打开Internet Explorer去上互联网选项设置点击

(二)转到安全 - >本地Intranet - >点击网站

(iii)点击高级:

(四)添加站点:SERVERIP地址(ex.172.16.2.224或本地主机),然后关闭。



文章来源: Calling SSRS Report Server it asked “Authentication Required” window