- 締切済み
IIS 他マシンの共有フォルダへの接続について
質問させて頂きます。 Webサーバー(2008R2 IIS7.5) から、ファイルサーバーの共有フォルダに、UNC形式(\\サーバー名\aaa\bbb.txt)でアクセスしたいと考えております。(アクセスする際はVBです) 単純な方法では出来ないようなので、ネットの情報を調べてみたところ、「IIS_IUSRS権限を付ける」とか、「認証の偽装を行う」とか、「アプリケーションプールの設定を変える」とか、「machine.configのprocessModelにuserNameを設定」とか、いろいろな情報が出てくるのですが、全てうまくいきません。 (正確に言えば、うまくいくものもあるのですが、古い情報のようなので、今時点で使えるものなのか信用できません。) 悩んで悩んで、共有フォルダに「Users権限」を追加したところ、うまくいくようになってしまいました。 が、これで良いのか不安です。 これで運用しても問題ないかどうかのアドバイスをお願い致します。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- WebSurfer
- ベストアンサー率55% (33/59)
> このアカウントはローカルマシンに対してだけなので、結局は別マシンの > 共有フォルダに権限を付けることはできませんよね? Active Driectory を使ったドメイン環境ですよね? であれば、IIS7.5 のワーカープロセルのアカウントはネットワーク・クレデンシャルを持っているので、ドメイン環境下のファイルサーバーのファイルに、適切なアクセス権が設定してあれば、アクセスできるはずです。 以下のページの Accessing the Network のセクションを読んでください。 Application Pool Identities http://www.iis.net/learn/manage/configuring-security/application-pool-identities
- onos
- ベストアンサー率81% (127/155)
IIS7.5 の場合の実行時ユーザの権限についてはこの資料がいいのかな? http://technet.microsoft.com/ja-jp/library/ee886292.aspx 偽装等を利用しない場合はアプリケーションプールIDのアカウントを使用して権限を与えるのがよさそうですね。
- onos
- ベストアンサー率81% (127/155)
そもそもどういう形でアクセスしているのが不明にみえます。 Webアプリの中からプログラムでアクセスするのか、別になにか実行ファイルがあってアクセスするのか、もしかするとWebの一部として見えるようにIISで設定できてればいいのか。。。 これらによって適切な権限の設定の仕方は違うはず。 なにをどうしたいのか、もうすこし突っ込んで説明してもらわないと、正しいかどうか判断できる人はいないと思います。
補足
説明不足ですみません。 IISでASP.NETを動作させています。 IISのアプリケーションプールのIDは「ApplicationPoolIdentity」で、.NetFrameWorkは4.0です。 共有フォルダへのアクセスは、aspxファイルのVBに記述してあり、、ボタンクリック時にテキストファイルを読み込む処理となっています。 権限が無い場合は、「アクセスが拒否されました」のエラーが出ていました。
お礼
ありがとうございます。参考になります。 疑問点なのですが、アプリケーションプールのIDのアカウントを仮に、 「IIS AppPool\TestAppPool」 とした場合、このアカウントはローカルマシンに対してだけなので、結局は別マシンの共有フォルダに権限を付けることはできませんよね?(認識あっていますか?) また、アプリケーションプールのIDを「ApplicationPoolIdentity」から「NetWork Service」に変更し、共有フォルダには、 「ドメイン名\NetWork Service」 の権限(フルコントロール)を追加しましたが、それでもアクセス拒否されてしまいました。 正直、いけそうな気がしていたので何故ダメか理解できていません。 さらに、記事を見る限り、Users権限を付けても、それほど問題ではないような気もしてきました。