内輪用にNTFSアクセス権でアクセスを制限しているサイトをIIS5で運用しているのですが


Microsoft JET Database Engine エラー '80004005'

エラーを特定できません


というエラーが出てつながらなくなりましたよ。

該当のGlobal.asaの行を見るとADOでMDBファイルを開くところで死んでます。
アクセス用のユーザーアカウントはMDBファイルに対してアクセス権を持っています。
管理者権限のユーザー名とパスワードを入力するとエラーが出ず接続できます。
IISアプリケーションのアプリケーション保護レベルの設定は高(分離プロセス)です。

原因が分からないので放置してたんですが、今日FileMonを使って調べてみたところ…

JETでMDBファイルにアクセスする際にテンポラリファイルをIWAMユーザーのプロファイル内のTEMPフォルダに作成しようとして失敗してました。

なんでこんな変な動作するんだw
IWAMユーザーのプロファイルフォルダにアクセス権を与えたところ動作するようになりましたとさ。

Webを検索しても事例が見つからなかったので参考になれば。

ちなみにProcessMonitorでなくFileMonを使用したのはOSがWindows2000だったから。