1

簡単に言えば、問題は、レポート ビューアーに埋め込まれたレポートを表示しようとすると、次のスタック トレースで 401 Unauthorized エラーが発生することです。

   at Microsoft.SqlServer.ReportingServices2005.Execution.RSExecutionConnection.GetSecureMethods()
   at Microsoft.SqlServer.ReportingServices2005.Execution.RSExecutionConnection.IsSecureMethod(String methodname)
   at Microsoft.SqlServer.ReportingServices2005.Execution.RSExecutionConnection.LoadReport(String Report, String HistoryID)
   at Microsoft.Reporting.WebForms.ServerReport.GetExecutionInfo()
   at Microsoft.Reporting.WebForms.ServerReport.SetParameters(IEnumerable`1 parameters)
   at ReportingObject.RenderReport(ReportViewer reportViewer, ReportParameter[] param) in C:\Projects\RBDCReportMapIntelligence\RBDCReportMapIntelligence\ReportingObject.cs:line 41
   at Report.btnViewReport_Click(Object sender, EventArgs e) in c:\Projects\RBDCReportMapIntelligence\RBDCReportMapIntelligence\Report.aspx.cs:line 126
   at System.Web.UI.WebControls.Button.OnClick(EventArgs e)
   at System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument)
   at System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument)
   at System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
   at System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)
   at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

詳細は次のとおりです。

  1. 私のマシン (Windows Vista を実行) では、IIS とレポート サービスの両方が実行されています。
  2. 私はマシンのローカル管理者ですが、システム管理者ではありません。
  3. この投稿に従って、自分自身にアクセスできるようにレポートサービスを構成しました(かなり一般的なソリューションのようです)。しかし、これを行った後でも、管理者として IE を実行しないとレポート マネージャーが表示されません。
  4. IIS では、すべてのサイトに対して DefaultAppPool で匿名認証が有効になっているだけで、有効にする必要があるものと無効にする必要があるものはよくわかりません。DefaultAppPool は、NetworkService が ID として設定された統合マネージド パイプライン モードです。
  5. VSに変更が必要な設定があるかどうかはわかりません。
  6. レポートサーバーに接続するためのIReportServerCredentialsインターフェイスを実装するクラスがあります(ネット上の多くの例に従って)

私はウェブとstackoverflowも調べようとしましたが、それらのソリューションから多くのことを試しましたが、何も役に立たないようです.

誰かが助けてくれたら最高です。質問にさらに詳細を追加する必要がある場合はお知らせください。

4

1 に答える 1

2

私はこれを次のように機能させました:

  1. UAC をオフにすると、管理者として IE を実行しなくてもレポート マネージャーを表示できるようになります
  2. ネットワーク サービスで実行される新しいアプリ プールを作成し、そのアプリ プールでアプリケーションを実行する
  3. Reporting Services をネットワーク サービス アカウントで実行します。

それが他の誰かに役立つことを願っています。

于 2012-09-12T00:42:50.960 に答える