16

SQL Server2008R2レポートサーバーをWindows7マシンとASP.NETアプリケーションで実行しています。ASP.NETアプリケーションは、レポートのリストを表示したり、レポートをレンダリングしたりするようにレポートサーバーに要求します。ASP.NETアプリケーションはレポートのリストを正常に取得しますが、レポートをレンダリングしようとすると、次のエラーが発生します。

The permissions granted to user 'IIS APPPOOL\DefaultAppPool' are insufficient for performing this operation. (rsAccessDenied)

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 

Exception Details: Microsoft.Reporting.WebForms.ReportServerException: The permissions granted to user 'IIS APPPOOL\DefaultAppPool' are insufficient for performing this operation. (rsAccessDenied)

Source Error: 

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace: 

[ReportServerException: The permissions granted to user 'IIS APPPOOL\DefaultAppPool' are insufficient for performing this operation. (rsAccessDenied)]
Microsoft.Reporting.WebForms.ServerReportSoapProxy.OnSoapException(SoapException e) +89
Microsoft.Reporting.WebForms.Internal.Soap.ReportingServices2005.Execution.ProxyMethodInvocation.Execute(RSExecutionConnection connection, ProxyMethod`1 initialMethod, ProxyMethod`1 retryMethod) +404
Microsoft.Reporting.WebForms.Internal.Soap.ReportingServices2005.Execution.RSExecutionConnection.LoadReport(String Report, String HistoryID) +180
Microsoft.Reporting.WebForms.ServerReport.EnsureExecutionSession() +79
Microsoft.Reporting.WebForms.ServerReport.GetParameters() +54

注:この同じコードベースは、Windows7およびWindowsServer 2008を実行している複数のマシンで正常に機能しました。Iv'eはWeb検索に基づいてさまざまなことを試みましたが、解決策が見つかりませんでした。これについての洞察をいただければ幸いです。

4

6 に答える 6

31

最後にそれを理解します。私のReportingServicesはローカルアカウントに構成され、IISのアプリケーションプールはApplicationPoolIdentityに構成されました。アプリケーションプールをLocalSystemに変更し、修正しました。私がこれを理解するのに数時間を無駄にしたので、この情報が他の人に役立つことを願っています。

于 2012-06-11T19:55:13.380 に答える
20

mreyeros がコメントに記載したもう 1 つの解決策は、レポート マネージャーで IIS APPPOOL\DefaultAppPool ユーザーにブラウザーのアクセス許可を与えることです。

これを行うには、ホーム フォルダーのレポート マネージャー Web サイト (http:///Reports) を開き、[フォルダー設定] -> [セキュリティ] をクリックし、[新しい役割の割り当て] をクリックして、IIS APPPOOL\DefaultAppPool を名前として入力し、リストからアクセス許可を選択します。

于 2012-09-27T07:16:38.797 に答える
4

Windows Server 2008 R2 で実行されている IIS とレポート サーバーを除いて、ここではほぼ同じ状況です。以前は、独自のアプリケーション プールで asp.net アプリケーションを実行していましたが、すべてが機能していました。(別の問題のため) アプリケーションを DefaultAppPool に変更したときに、アクセス許可の問題が発生しました。DefaultAppPool の ID を ApplicationPoolIdentity から LocalSystem (IIS の詳細設定) に変更したところ、再び機能しました。

于 2012-07-19T10:03:53.450 に答える
2

これは悪い習慣だと思うので、アプリケーション プールを LocalSystem に設定したくありません。

Microsoft の推奨事項 (LocalSystem を使用せず、ApplicationPoolIdentity を使用) については、 https ://technet.microsoft.com/en-us/library/jj635855.aspx#AppPools を参照してください。

正当な理由については、こちらを参照してください: https://stackoverflow.com/a/510225/44169

説明されているエラーが発生していました。アプリ プール ID をレポート サーバー フォルダーのアクセス許可に追加しましたが、これはサブフォルダーのセキュリティ設定によって上書きされていました。サブフォルダーを選択し、「親のセキュリティ設定に戻す」をクリックしてこれを修正しました。

于 2016-03-04T10:46:36.480 に答える
-1

IIS アプリケーション プールで、 ApplicationPoolIdentityをLocalSystem変更すると、修正されます。

デフォルトでは、ApplicationPoolIdentity はレポート サービス、つまり SSRS レポートにアクセスできません。

アプリケーションの ID アカウントを変更していない場合、アプリケーションでレポートを実行すると、既定の ID アカウント "ApplicationPoolIdentity" を使用してレポート サーバーにアクセスします。デフォルトでは、デフォルトにはレポート サーバーにアクセスする権限がありません。したがって、シナリオでは、アプリケーション プールのデフォルトの ID アカウント「ApplicationPoolIdentity」によるこのエラーには、レポート サーバーにアクセスする権限がありません。

詳細情報 リンク:

https://social.msdn.microsoft.com/Forums/sqlserver/en-US/9593f5a8-09e7-4299-9cf1-5251dd375c38/the-permissions-granted-to-user-iis-apppoolaspnet-v40-are-insufficient- for-performing-this?forum=sqlreportingservices

于 2018-10-24T17:35:46.260 に答える