MovieJukeBoxのワーカプロセス実行アカウントを、NT AUTHORITY\NETWORK SERVICE から、VMJBのローカルアカウント A に変更

アプリケーションプールのワーカプロセス実行アカウントを、NT AUTHORITY\NETWORK SERVICE から、VMJBのローカルアカウント A に変更した。

背景

(変更前)

MEDIASV に共有動画コンテンツ、IIS、SQLServer

(変更後)

MEDIASV に共有動画コンテンツ、MEDIASV の Hyper-V 上の仮想マシン VMJB に IIS、SQLServer

というように、構成を変更していた。

問題

インポートボタン押下すると、MEDIASVの共有フォルダのファイル一覧を作成する。このときアプリケーションプールのワーカプロセス実行アカウント NT AUTHORITY\NETWORK SERVICE の権限で、MEDIASVの共有フォルダにアクセスするみたいだ。NT AUTHORITY\NETWORK SERVICE は  VMJB のビルトインアカウントなので、MEDIASVの共有ファイルにアクセスすることができないみたいだ。

変更前は、共有動画コンテンツ、IIS、SQLServer がすべて同じパソコン上で構成されていたので、ワーカプロセスの実行アカウントが NT AUTHORITY\NETWORK SERVICE で問題なく運用できていた。
※NT AUTHORITY\NETWORK SERVICE へ SQLServerの権限「db_reader、db_writer、ddl_admin及び実行」は付与する必要あり。

対処

アプリケーションプールのワーカプロセス実行アカウントを、NT AUTHORITY\NETWORK SERVICE から、VMJBのローカルアカウント A に変更した。

MEDIASVにも同じ名前のローカルアカウント A がある。

WORKGROUP運用なので、同じ名前のアカウント名だから、VMJBで動作するWEBアプリの実行アカウント A は、MEDIASVの共有ファイルにアクセスできるようになったわけだ。

評価

VMJB\A は一般ユーザだが、SQLServerの権限は sysadmin を付与されているので、DBアクセスは問題ない。というか、権限が強すぎる。

MovieJukeBoxで必要となるDBアクセス権限は、db_reader、db_writer、ddl_admin及び実行のみである。例えば、 W-SQL というローカルアカウントを MEDIASV と VMJB 双方に作成し、W-SQL をワーカプロセスの実行アカウントにし、W-SQL に対し、上述のSQLServerの権限を付与するのがよいと思う。

今回は個人利用なのと自分で作成したWEBアプリなので、ローカルアカウント A のままにすることにした。

コメント

このブログの人気の投稿

ダブルクォーテーションで括られたCSVカ​ンマ区切りテキストファイルを SQL Server で Bulk Insert する方法

IKEAの鏡を壁に取り付ける

PowerShellでTSV/CSVの列を絞り込んで抽出し、(先頭/行末)からN行出力する