Microsoft KB Archive/166029

From BetaArchive Wiki
Knowledge Base


Article ID: 166029

Article Last Modified on 6/23/2005



APPLIES TO

  • Microsoft Active Server Pages 4.0
  • Microsoft Internet Information Server 4.0
  • Microsoft Internet Information Services 5.0



This article was previously published under Q166029

We strongly recommend that all users upgrade to Microsoft Internet Information Services (IIS) version 6.0 running on Microsoft Windows Server 2003. IIS 6.0 significantly increases Web infrastructure security. For more information about IIS security-related topics, visit the following Microsoft Web site:

SYMPTOMS

When using Active Server Pages (ASP) to query an Access database, you may encounter the following error message.

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[Microsoft][ODBC Microsoft Access 97 Driver] The Microsoft Jet database engine cannot open the file '(unknown)'. It is already opened exclusively by another user, or you need permission to view its data.

/scripts/somefile.asp, line x

CAUSE

This Error message can be caused by any of the following conditions:

  1. The Access .mdb file is located on another computer than the IIS Server.

    -and-

    IIS Server is configured to use NT Challenge / Response when accessing secured script files.
  2. The Access .mdb file is located on another computer than the computer running IIS.

    -and-

    IIS is configured to use the IUSR_computername account for anonymous access.

    -and-

    The script file being accessed is not secured and permits anonymous access.

    -and-

    The IUSR_computername is a local account and the same account/password does not exist on the remote computer
  3. The Access .mdb file is located on the same computer as the Web server.

    -and-

    The datasource uses a UNC path to point to the .mdb file (for example, DSN=\\servername\share).

    -and-

    NT Challenge/Response is used to authenticate the user.
  4. The Access .mdb file is linked to a table where the table linked to is in an Access database on a network server. In this situation, please refer to the following article in the Knowledge Base for a workaround:

    189408 PRB: ASP Fails to Access Network Files Under IIS 4.0


RESOLUTION

This behavior is by design.

MORE INFORMATION

When using NT Challenge / Response with IIS, the users credentials are created at the browser. The credentials are then sent to IIS. IIS cannot forward those credentials on to another server.

The connection is attempted, but there is no username specified when connecting to the remote machine, so the connection fails.

REFERENCES

For additional information, click the article numbers below to view the articles in the Microsoft Knowledge Base:

174811 Authentication and Security White Paper for Internet Developers


253580 HOWTO: Connect to a Remote Access Database from Active Server Pages


Keywords: kberrmsg kbtshoot kbdatabase kbsecurity kbprb kbmdacnosweep KB166029