次のエラーが表示されます。 HTTPステータス401:要求が失敗しました。 URL:http://serverName/ReportServer/ReportService2005.asmx要求がHTTPステータス401で失敗しました
私は1つのサーバーとレポートサービスでWebアプリケーションを使用しています。その他のサーバーはWindows 2003をインストールしました。クレデンシャルのユーザーは、私がレポートサービスと同じReportinsサービスサービス中古。また、このユーザはRSSロールを持っており、データベースの所有者であり、このユーザはアプリケーションプール内にあります。私のコードでは間違っていますか? imporsonationを使用してレポートサービスWebサービスにアクセスする方法は何ですか?
{
ReportingService2005 rs = new ReportingService2005();
try
{
rs.Url = ConfigurationSettings.AppSettings["WSRS"].ToString();
//rs.Credentials = System.Net.CredentialCache.DefaultCredentials;
rs.PreAuthenticate = true;
rs.Credentials = new NetworkCredential(RS.User_Name,RS.Pass_Word,RS.Domain)
);
//string report = "/SampleReports/Employee Sales Summary";
string desc = "Added by workflow automatically";
string eventType = "TimedSubscription";
string scheduleXml = string.Empty;
/*ExtentionSettings Values*/
List<ParameterValue> ExtensionSettingsparmList = new List<ParameterValue>();
foreach (String name in colExtensionSettings.AllKeys)
{
ExtensionSettingsparmList.Add(new ParameterValue() { Name = name, Value = colExtensionSettings[name].ToString() });
}
ExtensionSettings extSettings = new ExtensionSettings();
extSettings.ParameterValues = ExtensionSettingsparmList.ToArray(); // extensionParams;
extSettings.Extension = "Report Server Email";
/*Parameters Values*/
List<ParameterValue> parameterList = new List<ParameterValue>();
foreach (String name in colParameters.AllKeys)
{
parameterList.Add(new ParameterValue() { Name = name, Value = colParameters[name].ToString() });
}
scheduleXml = @"<ScheduleDefinition><StartDateTime>" + DateTime.Now.AddMinutes(1).ToString("s") + "</StartDateTime></ScheduleDefinition>";
string matchData = scheduleXml;
return rs.CreateSubscription(report, extSettings, desc, eventType, matchData, parameterList.ToArray());
}