ASP ページを要求したときにエラー メッセージを接続するのには、Access データベースでは、IIS 7.0:「Microsoft JET データベース エンジンのエラー '80004005'"

文書翻訳 文書翻訳
文書番号: 926939
重要です この資料でにはセキュリティ設定を低くする方法、またはコンピューターのセキュリティ機能を無効にする方法を示す情報が含まれます。特定の問題を回避するには、このような変更を行います。これらの変更を行う前に、使用している環境でこの回避策の実装に関連付けられているリスクを評価することをお勧めします。この回避策を実装する場合は、コンピューターを保護するために、適切な追加手順を実行します。
すべて展開する | すべて折りたたむ

現象

次のシナリオを検討してください。Microsoft インターネット インフォメーション サービス (IIS) 7.0 が実行されている Web サーバーでは、データベースへの接続は、active server page (ASP) をホストします。ASP ページのデータ プロバイダーは Microsoft.Jet.OLEDB.4.0 データ プロバイダーです。ASP ページのデータ ソースは Microsoft Access データベース (.mdb) ファイルです。このシナリオでは、ASP ページを要求すると、次のエラー メッセージが表示されます。
Microsoft JET データベース エンジンのエラー '80004005'
不明なエラー
メモ 次の両方を使用すると、同様のエラー メッセージが表示されます。
  • Microsoft Access データベースでは、Access 2007 のファイル形式 (.accdb)
  • Microsoft.ACE.OLEDB.12.0 データ プロバイダー

原因

IIS 7.0 を構成してアプリケーション プール id を現在のユーザー プロファイルをロードする場合は、この問題が発生する可能性があります。現在のユーザーが一時ディレクトリに書き込むための十分なアクセス許可を持っていないためこの互換性の問題レガシ ASP アプリケーションと ADO ベースのアプリケーションがあります。

解決方法

この問題を解決するには、プロセス id 一時ディレクトリへの適切なアクセス制御エントリを追加する必要があります。これを行うには、オペレーティング システム用の手順を実行します。

Windows Server 2008 および Windows Vista SP1 またはそれ以降のバージョン

Windows Server 2008 または Windows Vista SP1 またはそれ以降のバージョンで実行されている IIS 7.0 Web サーバー上でこの問題を解決するには、次の手順を実行します。
  1. クリックしてください。 開始をクリックして すべてのプログラムをクリックして アクセサリを右クリックして コマンド プロンプト、し 管理者として実行します。.
  2. 管理者のパスワードまたは確認を求められたら、パスワードを入力するかクリックしてください 続行.
  3. 次のコマンドを入力し、ENTER キーを押します。
    icacls %SystemDrive%\Windows\Temp/grant Users:(CI)(S,WD,AD,X)

    メモ このコマンドは、ファイルとディレクトリに一時ディレクトリを作成するのには、すべてのユーザーをできます。
  4. 次のコマンドを入力し、ENTER キーを押します。
    icacls %SystemDrive%\Windows\Temp/grant"作成者 OWNER":(OI)(CI)(IO)(F)

    メモ ファイルまたはディレクトリに一時ディレクトリを作成したユーザーが所有者です。CREATOR OWNER アクセス制御エントリは、ファイルまたはディレクトリを完全にコントロールを付与します。作成者所有者ではないためこれらのファイルやディレクトリの他のユーザーがアクセスできません。
Windows Vista RTM

Windows Vista の RTM を実行している IIS 7.0 の Web サーバー上でこの問題を解決するには、次の手順を実行します。
メモ 既定で Windows Vista の rtm 版では、プロセス id NetworkService であり、一時的なディレクトリ %windir%\serviceprofiles\networkservice\appdata\local\temp。
  1. クリックしてください。 開始をクリックして すべてのプログラムをクリックして アクセサリを右クリックして コマンド プロンプト、し 管理者として実行します。.
  2. 管理者のパスワードまたは確認を求められたら、パスワードを入力するかクリックしてください 続行.
  3. 次のコマンドを入力し、ENTER キーを押します。
    icacls %windir%\serviceprofiles\networkservice\AppData\Local\Temp/grant Users:(CI)(S,WD,AD,X)

    メモ このコマンドは、ファイルとディレクトリに一時ディレクトリを作成するのには、すべてのユーザーをできます。
  4. 次のコマンドを入力し、ENTER キーを押します。
    icacls %windir%\serviceprofiles\networkservice\AppData\Local\Temp/grant"作成者 OWNER":(OI)(CI)(IO)(F)

    メモ ファイルまたはディレクトリに一時ディレクトリを作成したユーザーが所有者です。CREATOR OWNER のアクセス制御エントリを完全にコントロールは、ファイルまたはディレクトリが与えられます。作成者所有者ではないためこれらのファイルやディレクトリの他のユーザーがアクセスできません。

回避策

この問題を解決するのには、「解決方法」に記載記載されているメソッドを使用します。プロセス id 一時ディレクトリへのアクセス制御エントリを追加したくない場合は、ただし、この問題を回避を無効にして使用できます、 loadUserProfile アプリケーション プールのプロパティです。このプロパティは無効になっている場合は、IIS 7.0 アプリケーション プールの現在のユーザー プロファイルは読み込まれません。

重要です このプロパティを無効にする場合は、セキュリティ上のリスクを作成可能性があります。理解し、この回避策を実装する前にリスクを評価することを確認します。

無効にするのには loadUserProfile プロパティは、アプリケーション プールは、ApplicationHost.config ファイルを変更します。次の例では、これを行う方法を示します。
<applicationPoolDefaults>
    <processModel identityType="NetworkService" loadUserProfile="false" />
</applicationPoolDefaults> 

関連情報

一時の詳細については、ASP ページでデータベース クエリを実行するとディレクトリのアクセス権 Knowledge Base の資料を参照するのには、次の資料番号をクリックして。
315456FrontPage で ASP ページからデータベースに接続すると、データベース結果のエラー メッセージが表示されます。
従来の ASP を使用して、IIS 7.5 の IIS 7.0 の Microsoft Access データベースを使用
http://learn.iis.net/page.aspx/563/using-classic-asp-with-microsoft-access-databases-on-iis-70-and-iis-75/

プロパティ

文書番号: 926939 - 最終更新日: 2011年8月8日 - リビジョン: 6.0
キーワード:?
kbtshoot kbprb kbmt KB926939 KbMtja
機械翻訳の免責
重要: このサポート技術情報 (以下「KB」) は、翻訳者による翻訳の代わりに、マイクロソフト機械翻訳システムによって翻訳されたものです。マイクロソフトは、お客様に、マイクロソフトが提供している全ての KB を日本語でご利用いただけるように、翻訳者による翻訳 KB に加え機械翻訳 KB も提供しています。しかしながら、機械翻訳の品質は翻訳者による翻訳ほど十分ではありません。誤訳や、文法、言葉使い、その他、たとえば日本語を母国語としない方が日本語を話すときに間違えるようなミスを含んでいる可能性があります。マイクロソフトは、機械翻訳の品質、及び KB の内容の誤訳やお客様が KB を利用されたことによって生じた直接または間接的な問題や損害については、いかなる責任も負わないものとします。マイクロソフトは、機械翻訳システムの改善を継続的に行っています。
英語版 KB:926939
Microsoft Knowledge Base の免責: Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。

フィードバック

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com