2006.06.01

WEBアプリの実行時の権限について

最近、Windows 2003 Server の権限関連で、はまってしまいました…。

Webアプリからバッチプログラムを呼び出す というものですが、
バッチプログラム内で、PDF結合ツール(dll)を使用していて、
その部分でエラーになっていました。
 バッチプログラム単体では、正常に動作するけど、
Webアプリから呼び出すとエラーになるといった状況でした。

そこで、考えられるのが、実行時の権限になる訳ですが、
IIS上のWebアプリから、バッチプログラムを呼び出す際には、
「NETWORK SERVICE」というアカウントで実行されています。
このアカウントが、くせもので
コンピューターの管理の「ローカルユーザーとグループ」の設定では、
表示されません。
どうも、ユーザーでもグループでもなく、
「ビルトインセキュリティプリンシバル」というオブジェクトらしい…。

そして、このアカウントに適切な権限が無いと、
バッチプログラムを呼び出せません。

また、バッチプログラム内で、
PDF結合ツールやFAX送信ソフトなどを使用している場合には、
そのソフトに対しても、実行権限などの適切なファイル権限を
与える必要が有ります。

という事で、
バッチの呼び出しでエラーが発生していたら、
とりあえず、「NETWORK SERVICE」アカウントを
「Administrators」グループに入れて、
テストしてみて、動作確認をしてみましょう。

(コンピューターの管理の「ローカルユーザーとグループ」の設定で、
 「Administrators」グループ側で、メンバの追加で
 「NETWORK SERVICE」アカウントを追加します。)

それで、動作するようでしたら、その後は適切な権限に変更する事を忘れずに。

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)

photo
yatsuda