Symptoms
You configure Microsoft OLE DB Provider for DB2 2.0 to use SERVER_ENCRYPT authentication to connect to an IBM DB2 database. When you try to connect to this database by using a SQL Server linked server that is defined for the IBM DB2 database, you receive the following error:
OLE DB provider "DB2OLEDB" for linked server "Linked Server Name" returned message "Internal NetLib Error."
Msg 7303, Level 16, State 1, Server Server Name, Line 1
Cannot initialize the data source object of OLE DB provider "DB2OLEDB" for linked server "Linked Server Name."
This problem occurs when OLE DB Provider for DB2 2.0 is initialized under a user context that is not logged in to the SQL Server system where the linked server is defined. If the user who is using the linked server logs on to the SQL Server system, the linked server can successfully connect to the IBM DB2 database to run queries.
Note This problem can also occur in certain scenarios that are not related to SQL Server linked servers. These scenarios may occur if OLE DB Provider for DB2 2.0 is initialized for use by a user who is not logged on to the SQL Server system. The problem does not occur for users who are not logged on if OLE DB Provider for DB2 2.0 is configured to use a DB2 authentication method that does not require encryption, such as SERVER authentication.
Cause
OLE DB Provider for DB2 uses CryptoAPI to encrypt the IBM DB2 credentials that are specified in the DB2 connection string. During the encryption process, an encryption key is written to the user’s profile. Because a user profile is not loaded when a user is not logged on to the SQL Server system, the encryption key cannot be written to the user profile. Therefore, when the encryption request fails, the “Internal Netlib Error” error message is returned.
Resolution
Hotfix information
A supported hotfix is available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next software update that contains this hotfix.
If the hotfix is available for download, there is a "Hotfix download available" section at the top of this Knowledge Base article. If this section does not appear, contact Microsoft Customer Service and Support to obtain the hotfix.
Note If additional issues occur or if any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. For a complete list of Microsoft Customer Service and Support telephone numbers or to create a separate service request, visit the following Microsoft Web site:
http://support.microsoft.com/contactus/?ws=supportNote The "Hotfix download available" form displays the languages for which the hotfix is available. If you do not see your language, it is because a hotfix is not available for that language.
Prerequisites
You must have OLE DB Provider for DB2 2.0 installed to apply this hotfix.
Restart information
You do not have to restart the computer after you apply this hotfix.
Registry information
You do not have to change the registry.
Hotfix Replacement information
This hotfix does not replace any other hotfixes.
Hotfix file information
This hotfix contains only those files that are required to correct the issues that this article lists. This hotfix may not contain of all the files that you must have to fully update a product to the latest build.The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.
32-bit (x86) version
File name |
File version |
File size |
Date |
Time |
Platform |
---|---|---|---|---|---|
Db2oledb.dll |
7.0.3190.2 |
571,208 |
22-Oct-2009 |
18:14 |
x86 |
Microsoft.hostintegration.dataaccesslibrary.dll |
7.0.3190.2 |
2,426,768 |
22-Oct-2009 |
18:14 |
x86 |
Msdrda.dll |
7.0.3190.2 |
841,536 |
22-Oct-2009 |
18:13 |
x86 |
64-bit (x64) version
File name |
File version |
File size |
Date |
Time |
Platform |
Service branch |
---|---|---|---|---|---|---|
Db2oledb.dll |
7.0.3190.2 |
807,240 |
22-Oct-2009 |
18:15 |
x64 |
Not Applicable |
Microsoft.hostintegration.dataaccesslibrary.dll |
7.0.3190.2 |
2,426,768 |
22-Oct-2009 |
18:15 |
x86 |
Not Applicable |
Msdrda.dll |
7.0.3190.2 |
1,428,800 |
22-Oct-2009 |
18:15 |
x64 |
Not Applicable |
Db2oledb.dll |
7.0.3190.2 |
571,208 |
22-Oct-2009 |
18:14 |
x86 |
SYSWOW |
Msdrda.dll |
7.0.3190.2 |
841,536 |
22-Oct-2009 |
18:13 |
x86 |
SYSWOW |
Itanium architecture version
File name |
File version |
File size |
Date |
Time |
Platform |
Service branch |
---|---|---|---|---|---|---|
Db2oledb.dll |
7.0.3190.2 |
1,608,008 |
22-Oct-2009 |
18:15 |
IA-64 |
Not Applicable |
Microsoft.hostintegration.dataaccesslibrary.dll |
7.0.3190.2 |
2,426,768 |
22-Oct-2009 |
18:15 |
x86 |
Not Applicable |
Msdrda.dll |
7.0.3190.2 |
2,243,904 |
22-Oct-2009 |
18:15 |
IA-64 |
Not Applicable |
Db2oledb.dll |
7.0.3190.2 |
571,208 |
22-Oct-2009 |
18:14 |
x86 |
SYSWOW |
Msdrda.dll |
7.0.3190.2 |
841,536 |
22-Oct-2009 |
18:13 |
x86 |
SYSWOW |
Status
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.
More Information
After you apply this hotfix, OLE DB Provider for DB2 2.0 uses the default cryptographic service provider (CSP) instead of CryptoAPI. The default CSP does not write the encryption key to the user’s profile.
For more information about how to configure OLE DB Provider for DB2 2.0 to use SERVER_ENCRYPT as the DB2 authentication type, click the following article number to view the article in the Microsoft Knowledge Base:
916183 An update is available that lets OLE DB Provider for DB2 1.0 support a connection to an IBM DB2 computer that is configured to use the KRB_SERVER_ENCRYPT authentication type or the SERVER_ENCRYPT authentication type
For more information about software update terminology, click the following article number to view the article in the Microsoft Knowledge Base:
824684 Description of the standard terminology that is used to describe Microsoft software updates