Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reporting services 请求失败,HTTP状态为401:未经授权。SSR_Reporting Services - Fatal编程技术网

Reporting services 请求失败,HTTP状态为401:未经授权。SSR

Reporting services 请求失败,HTTP状态为401:未经授权。SSR,reporting-services,Reporting Services,我在MVCWeb项目中有一个类处理SSR。 当我在IIS机器上运行应用程序时,我访问报告OK。 当从网络上的另一台计算机上运行时,会显示“请求失败,HTTP状态为401:Unauthorized” 报表服务器具有自己的唯一凭据。不接受网络上的登录凭据 附录a课程的一部分 reportViewer.ProcessingMode = ProcessingMode.Remote; reportViewer.ServerReport.ReportServerUrl = new Uri(System.Co

我在MVCWeb项目中有一个类处理SSR。 当我在IIS机器上运行应用程序时,我访问报告OK。 当从网络上的另一台计算机上运行时,会显示“请求失败,HTTP状态为401:Unauthorized” 报表服务器具有自己的唯一凭据。不接受网络上的登录凭据

附录a课程的一部分

reportViewer.ProcessingMode = ProcessingMode.Remote;
reportViewer.ServerReport.ReportServerUrl = new Uri(System.Configuration.ConfigurationManager.AppSettings["RSUrl"]);
reportViewer.PromptAreaCollapsed = true;
reportViewer.ShowParameterPrompts = false;
reportViewer.SizeToReportContent = true;
reportViewer.InteractivityPostBackMode = InteractivityPostBackMode.AlwaysAsynchronous;
reportViewer.AsyncRendering = false;

if (reportType == "GRP")
{
    reportViewer.ShowToolBar = false;
    reportViewer.ShowPageNavigationControls = false;
}
else //if (reportType == "RPT")
{
    reportViewer.ShowToolBar = true;
    reportViewer.ShowPageNavigationControls = true;
}

strReportName = _reqObjNm;
strReportPath = System.Configuration.ConfigurationManager.AppSettings["RSPath"];
reportViewer.ServerReport.ReportPath = strReportPath + strReportName;

string RSUsername = System.Configuration.ConfigurationManager.AppSettings["RSUserName"];
string RSPwd = System.Configuration.ConfigurationManager.AppSettings["RSPwd"];
string RSDomain = System.Configuration.ConfigurationManager.AppSettings["RSDomainFull"];

//App_Start.ReportViewerCredentials rvCreds = new App_Start.ReportViewerCredentials(RSUsername, RSPwd, RSDomain);
//reportViewer.ServerReport.ReportServerCredentials = rvCreds;

reportViewer.Visible = true;
if (reportViewer.ServerReport.GetParameters().Count > 0)  // HERE breaks :(

如果我正确理解了您的问题,我认为您需要将“ReportUser”作为本地用户添加到远程SSRS服务器,并在SSRS manager中授予本地“ReportUser”用户帐户正确的访问权限

本地帐户+NLB=可预测的故障。使用域帐户访问虚拟服务器名称,或者如果要使用本地帐户在本地框上运行任务,请配置主机条目,使虚拟服务器名称以独占方式使用本地计算机。NLB通常按IP地址缓存路由(不是纯粹的循环平衡),这可能导致“但本地帐户有时可以工作”的情况。但是,如果您被路由到NLB中的其他节点,则本地帐户将失败。我同意你的看法。我给出了一个解决方案,可以让用户启动并运行。op没有说明如何远程访问服务器或网络的名称。我希望,如果正在使用域控制器,那么该帐户将是首选。创建本地帐户将是解决帐户问题的快速方法,而不是最具可扩展性的方法。