【SQL 2005】SQL 2005 を WS2008 の DCにインストールすると Reporting Service が動作しない場合の対処

「肉体疲労時の栄養補給~」というCMがありましたが、これって「肉体疲労児」だと思ってませんでした?まさに今の私がそんな感じです。

それはともかく、Tech・Edのデモ環境構築中です。

Windows Server 2008 に Active Directory(AD DS)をインストールしたマシン、つまりドメインコントローラに SQL Server 2005 + Reporting Service インストールし、お約束通り以下の url にて動作確認をしたところ、エラーが発生しました。

https://localhost/reports/

SQLREPERROR06
レポートサーバーが応答していません。レポートサーバーが実行中で、このコンピュータからアクセスできることを確認してください。

https://localhost/reportserver/

SQLREPERROR05

レポートサーバーで構成エラーが発生しました。詳細については、レポートサーバーのログ ファイルを参照してください。
(rsServerConfigurationError)
パス 'c:\Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportServer\RSReportServer.config' へのアクセスが拒否されました。

上記に示されているとおり、 RSReportServer.config へのアクセスがないことが原因です。では、いったいぜんたい、どこのどいつが RSReportServer.config にアクセスしようとしているのかといえば、IIS7のアプリケーションプールに設定されているアカウント「NetworkService」です。

IISCONFIG04

上記ファイルへのアクセス権を確認してみると、以下のようになっていました。 赤く囲った部分を見てください。

SQLREPERROR07 

SIDがそのまま表示されていることがわかります。これまでの経験では、このように表示されているときには、実IDが削除されているにもかかわらず、ファイルに設定されたACE(アクセスコントロールエントリ)のみが残されている場合です。

が、今回はドメインコントローラ上ですから、それはないだろう...と。

ためしにメンバーサーバーに SQL Server 2005 をインストールして確認したところ、以下のようなアクセス権が設定されていました。

SYSTEM
:フルコントロール
SQLServer2005ReportingServicesWebServiceUser$<コンピュータ名>$<インスタンス名>
:読み取り/書き込み/特殊なアクセス許可
SQLServer2005ReportServerUser$<コンピュータ名>\<インスタンス名>
:読み取り/書き込み
Administrators
:フルコントロール

どうやら、SIDで表示されているのは、SQLServer2005ReportingServicesWebServiceUser$<コンピュータ名>$<インスタンス名> のようです。このグループのメンバを確認したところ、本来ここに入っているはずの NT Authority\Network Service がいません。空っぽです。

ものぐさな私は、上記ファイル(RSReportServer.config) に対して Network Service アカウントへのアクセス権を与えて急場をしのぎました。

が!

これは場当たり的であり、きちんとしたアカウント設計を行っている場合には 、当然ながら上記方法では対処できません。

そんな場当たり的で適当な対処ではなく、きっちりと対応したい(というか、是非そうしてください)という方は、是非とも以下の KB をご覧ください。タイトルの日本語がおかしいのは、機械翻訳のせいです...。

それがWindows Server 2008にインストールする方法とコンピュータで SQL Server 2005 レポート サービス を構成する方法を実行しています
https://support.microsoft.com/kb/938245/ja

このKBをすごくわかりやすく解説してくれているのが、マイクロソフトBIチームの 米野 氏です。

PPS を Windows Server 2008 上で動かしてみよう #1

PPS を Windows Server 2008 上で動かしてみよう #2

もともと Performance Point Server(PPS)のデモ環境(もちろん Tech・Ed対応)を作る際に検証された手順のようです。Tech・Edでは、よろしければ、米野氏のセッションもご覧になってください。

T3-306 Office PerformancePoint Server 2007 プランニング モデルの作成と展開