IIS / ODBC / user permission

Didier CLAPIER 0 Reputation points
2024-01-31T17:23:16.07+00:00

Hello,

With Windows server 2009 / IIS 10 / ODBC 64 / Classic ASP i experience a problem : We have an internat website (Intranet) for our company, In global.asa i open ODBC connection : Session_Start : Set Myconn = Server.CreateObject("ADODB.Connection") Myconn .ConnectionString = "ODBC;DSN=MyDSN;DRIVER={Microsoft Access Driver (*.mdb, *.accdb)}" Myconn .Open

This is working perfectly when i navigate on this website, i'm a member of administrators group. My problem : when a domain user try to navigate the WAS rise a warning , saying the process terminate, and the web interface ask for user credential; when the user gives user/password it does not work , the only way to make it working it to give credential of an admin user. Strange behaviour : after rebooting the server or after iisreset, or after pool recycling, users cannot navigate until an administrator navigate once... it looks like the administrator open a pipe, and that pipe make the website working for standard user. After analysys the the WAS warning says that the process terminate because of a broken pipe, after debugging the MSADO15!CCONECNECTION::OPEN cause this process termination. This comes from MSADO15.DLL I checked process, and i can't see any ACCESS_DENIED error. I checked user permission on the server (DB, DB path, WWW path, MSADO15.DLL, ...) i can't find why a user can't open the ODBC connection for the first time. Any idea ? Thank you , Didier

Internet Information Services
Access
Access
A family of Microsoft relational database management systems designed for ease of use.
333 questions
Access Development
Access Development
Access: A family of Microsoft relational database management systems designed for ease of use.Development: The process of researching, productizing, and refining new or existing technologies.
849 questions
{count} votes

1 answer

Sort by: Most helpful
  1. MotoX80 32,556 Reputation points
    2024-02-06T13:12:48.33+00:00

    Trace the error with Process Monitor.

    https://video2.skills-academy.com/en-us/sysinternals/downloads/procmon

    Do an iisreset to start clean. Start the procmon trace. Browse the site with a standard user. When the error occurs stop the trace. (It will capture lots of events.) Analyze the file and registry activity that w3wp.exe references. Look for "access denied". Do you see file I/O entries for the .mdb file?

    What entries do you see in the IIS and HTTP logs for that one request?

    C:\inetpub\logs C:\Windows\System32\LogFiles\HTTPERR

    If you still can't figure it out, enable failed request tracing and capture the error.

    https://www.bing.com/search?q=iis+failed+request+tracing