PRB: SQL Server 7.0 Link to Access Database Fails with Error 7399

ID: Q241267


The information in this article applies to:
  • Microsoft Data Access Components versions 1.5, 2.0, 2.1, 2.1 (GA), 2.1 SP1, 2.1 SP2


SYMPTOMS

User on computer 'A' (either Windows NT or Windows 9x) is running SQL 7.0 Enterprise Manager, managing a SQL 7.0 Server on a Windows NT computer 'B'. The user creates a Linked Server, specifying a Microsoft Access database on an NTFS share on computer 'C'. The user is logged into computer 'A' using the same domain account the SQL Server is running under on computer 'B'. Computer 'B' is registered in the computer 'A' Enterprise Manager using Windows NT Authentication. The NTFS share on computer 'C' is configured to give full control to that same domain account. If the user attempts to view the tables in the Linked Server that was just created, the user see's the following 7399 error:

"Error 7399: OLE DB provider 'MSDASQL' reported an error. Driver's SQLSetConnectAttr failed 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."
If the user moves to the SQL Server computer (computer 'B') and attempts the same operation, the user is able to view the tables without an error.


CAUSE

Windows NT does not support "double hop" authentication. The second computer, 'B', is unable to use computer 'A's authentication to connect to the NTFS share.


RESOLUTION

Register the SQL Server on 'B' in the Enterprise Manager on computer 'A' using SQL Authentication. When server 'B' relays the request to connect to the NTFS share on 'C', it uses it's own domain authentication, which will work since it is a single hop access.

Additional query words:

Keywords : kbOLEDB kbSQLServ700 kbGrpMDAC kbMDAC210 kbGrpOLEDB
Version : WINDOWS:1.5,2.0,2.1,2.1 (GA),2.1 SP1,2.1 SP2
Platform : WINDOWS
Issue type : kbprb


Last Reviewed: October 8, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.