AD DS database size increases significantly when the Credential Roaming feature is enabled in Windows Vista, in Windows 7, in Windows Server 2008 or in Windows Server 2008 R2
When you enable the Credential Roaming feature in a domain, the size of the Active Directory Domain Services (AD DS) database increases significantly.
Additionally, you may experience performance issues that are related to AD DS when this issue occurs. For example, you may experience LDAP query delays or replication delays.
This issue occurs because unnecessary credential information is stored for each user in the domain. Some of this credential information may not have to be roamed. The effect of storing unnecessary credential information is proportional to the number of users. Therefore, when many users exist in a domain, the size of the AD DS database increases significantly. Additionally, the complete AD DS database (Ntds.dit) may not be loaded into memory on the domain controllers. Therefore, you may experience the performance issues that are described in the "Symptoms" section.
Note The credential information of each domain user is added to the AD DS database in order to enable the Credential Roaming feature.
After you install the hotfix, the Credential Roaming feature filters user credentials before it uploads them. This behavior prevents the addition of unnecessary credential information to the AD DS database.
A filtering layer is added to filter out the following credential information:
Keys that are not associated with a certificate
Data Protection API (DPAPI) keys that do not protect a roamed private key binary large object (BLOB)
Smart card certificates
The following registry entries can be added under the HKEY_CURRENT_USER\Software\Policies\Microsoft\Cryptography\AutoEnrollment subkey to control whether the Credential Roaming feature filters the credential information:
Note If the value of the registry entry is not set (for example, if the default value is used) or is zero, keys that are not associated with a certificate are not roamed. Setting the value to 0x1 disables this filter. This enables all CAPI and CNG asymmetric key pairs from Microsoft providers to roam and to be stored in the AD DS database.
Note If the value of the registry entry is not set (for example, if the default value is used) or is zero, as in the following example, DPAPI keys that do not protect a roamed private key binary large object (BLOB) are not roamed. Setting the value to 0x1 disables this filter and allows for all DPAPI keys to roam and take space in Active Directory.
Note If the value of the registry entry is not set (for example, if the default value is used) or is zero, certificates and certificate requests are not roamed. This behavior occurs when the keys of the certificates and certificate requests are managed by the Microsoft Base Smart Card Crypto Provider or by the Microsoft Smart Card Key Storage Provider. Setting the value to 0x1 turns off this filter and enables all smart card certificates to roam and to take space in Active Directory.
Notes
This hotfix does not affect credentials that have already roamed to an Active Directory in which the Credential Roaming feature is enabled.
By default, the following items do not roam when you enable the Credential Roaming feature after you install this hotfix:
Smart card certificates
DPAPI keys
Other keys that are not associated with certificates
You must install this hotfix on all client computers that roam credential information to the AD DS database.
Hotfix information
Important This hotfix has been re-released to address an issue in which the digital signature on files produced and signed by Microsoft will expire prematurely, as described in Microsoft Security Advisory 2749655
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 the problem described in this article. 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:
Note 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
To apply this hotfix, you must be running one of the following operating systems:
Windows Vista Service Pack 2 (SP2)
Windows Server 2008 Service Pack 2 (SP2)
Windows 7
Windows 7 Service Pack 1 (SP1)
Windows Server 2008 R2
Windows Server 2008 R2 Service Pack 1 (SP1)
For more information about how to obtain a Windows Vista service pack, click the following article number to view the article in the Microsoft Knowledge Base:
How to obtain the latest Windows Vista service pack
For more information about how to obtain a Windows Server 2008 service pack, click the following article number to view the article in the Microsoft Knowledge Base:
How to obtain the latest service pack for Windows Server 2008
For more information about how to obtain a Windows 7 or Windows Server 2008 R2 service pack, click the following article number to view the article in the Microsoft Knowledge Base:
Information about Service Pack 1 for Windows 7 and for Windows Server 2008 R2
Registry information
To use the hotfix in this package, you do not have to make any changes to the registry.
Restart requirement
You must restart the computer after you apply this hotfix.
Hotfix replacement information
This hotfix does not replace a previously released hotfix.
File information
The global version of this hotfix installs files that have the attributes that are listed in the following tables. The dates and the times for these files are listed in Coordinated Universal Time (UTC). The dates and the times for these files on your local computer are displayed in your local time together with your current daylight saving time (DST) bias. Additionally, the dates and the times may change when you perform certain operations on the files.
Windows Vista and Windows Server 2008 file information notes
Important Windows Vista hotfixes and Windows Server 2008 hotfixes are included in the same packages. However, only "Windows Vista" is listed on the Hotfix Request page. To request the hotfix package that applies to one or both operating systems, select the hotfix that is listed under "Windows Vista" on the page. Always refer to the "Applies To" section in articles to determine the actual operating system that each hotfix applies to.
The files that apply to a specific product, SR_Level (RTM, SPn), and service branch (LDR, GDR) can be identified by examining the file version numbers as shown in the following table.
Collapse this tableExpand this table
Version
Product
SR_Level
Service branch
6.0.600
2
.
22xxx
Windows Vista and Windows Server 2008
SP2
LDR
The MANIFEST files (.manifest) and the MUM files (.mum) that are installed for each environment are listed separately in the "Additional file information for Windows Server 2008 and for Windows Vista" section. MUM files and MANIFEST files, and the associated security catalog (.cat) files, are extremely important to maintain the state of the updated components. The security catalog files, for which the attributes are not listed, are signed with a Microsoft digital signature.
For all supported x86-based versions of Windows Server 2008 and of Windows Vista
Collapse this tableExpand this table
File name
File version
File size
Date
Time
Platform
Dimsroam.dll
6.0.6002.22892
62,464
10-Jul-2012
15:53
x86
For all supported x64-based versions of Windows Server 2008 and of Windows Vista
Collapse this tableExpand this table
File name
File version
File size
Date
Time
Platform
Dimsroam.dll
6.0.6002.22892
72,704
10-Jul-2012
16:31
x64
Dimsroam.dll
6.0.6002.22892
62,464
10-Jul-2012
15:53
x86
For all supported IA-64-based versions of Windows Server 2008
Collapse this tableExpand this table
File name
File version
File size
Date
Time
Platform
Dimsroam.dll
6.0.6002.22892
166,912
10-Jul-2012
15:14
IA-64
Dimsroam.dll
6.0.6002.22892
62,464
10-Jul-2012
15:53
x86
Windows 7 and Windows Server 2008 R2 file information notes
The files that apply to a specific product, milestone (RTM, SPn), and service branch (LDR, GDR) can be identified by examining the file version numbers as shown in the following table:
Collapse this tableExpand this table
Version
Product
Milestone
Service branch
6.1.760
0.21xxx
Windows 7 and Windows Server 2008 R2
RTM
LDR
6.1.760
1.22xxx
Windows 7 and Windows Server 2008 R2
SP1
LDR
The MANIFEST files (.manifest) and the MUM files (.mum) that are installed for each environment are listed separately in the "Additional file information for Windows Server 2008 R2 and for Windows 7" section. MUM and MANIFEST files, and the associated security catalog (.cat) files, are extremely important to maintain the state of the updated components. The security catalog files, for which the attributes are not listed, are signed with a Microsoft digital signature.
For all supported x86-based versions of Windows 7
Collapse this tableExpand this table
File name
File version
File size
Date
Time
Platform
Adprovider.dll
6.1.7600.21263
51,200
10-Jul-2012
18:13
x86
Capiprovider.dll
6.1.7600.21263
53,248
10-Jul-2012
18:13
x86
Cngprovider.dll
6.1.7600.21263
56,320
10-Jul-2012
18:13
x86
Dimsroam.dll
6.1.7600.21263
39,424
10-Jul-2012
18:14
x86
Dpapiprovider.dll
6.1.7600.21263
49,152
10-Jul-2012
18:14
x86
Wincredprovider.dll
6.1.7600.21263
38,912
10-Jul-2012
18:17
x86
Adprovider.dll
6.1.7601.22048
51,200
10-Jul-2012
16:53
x86
Capiprovider.dll
6.1.7601.22048
53,248
10-Jul-2012
16:53
x86
Cngprovider.dll
6.1.7601.22048
56,320
10-Jul-2012
16:54
x86
Dimsroam.dll
6.1.7601.22048
39,424
10-Jul-2012
16:54
x86
Dpapiprovider.dll
6.1.7601.22048
49,152
10-Jul-2012
16:54
x86
Wincredprovider.dll
6.1.7601.22048
38,912
10-Jul-2012
16:57
x86
Dimsjob.dll
6.1.7600.21263
33,792
10-Jul-2012
18:14
x86
Dimsjob.dll
6.1.7601.22048
33,792
10-Jul-2012
16:54
x86
For all supported x64-based versions of Windows 7 and of Windows Server 2008 R2
Collapse this tableExpand this table
File name
File version
File size
Date
Time
Platform
Adprovider.dll
6.1.7600.21263
58,880
10-Jul-2012
18:03
x64
Capiprovider.dll
6.1.7600.21263
59,392
10-Jul-2012
18:03
x64
Cngprovider.dll
6.1.7600.21263
62,976
10-Jul-2012
18:03
x64
Dimsroam.dll
6.1.7600.21263
46,592
10-Jul-2012
18:04
x64
Dpapiprovider.dll
6.1.7600.21263
54,784
10-Jul-2012
18:04
x64
Wincredprovider.dll
6.1.7600.21263
43,008
10-Jul-2012
18:09
x64
Adprovider.dll
6.1.7601.22048
58,880
10-Jul-2012
17:48
x64
Capiprovider.dll
6.1.7601.22048
59,392
10-Jul-2012
17:49
x64
Cngprovider.dll
6.1.7601.22048
62,976
10-Jul-2012
17:49
x64
Dimsroam.dll
6.1.7601.22048
46,592
10-Jul-2012
17:49
x64
Dpapiprovider.dll
6.1.7601.22048
54,784
10-Jul-2012
17:49
x64
Wincredprovider.dll
6.1.7601.22048
43,008
10-Jul-2012
17:55
x64
Dimsjob.dll
6.1.7600.21263
40,448
10-Jul-2012
18:04
x64
Dimsjob.dll
6.1.7601.22048
40,448
10-Jul-2012
17:49
x64
Adprovider.dll
6.1.7600.21263
51,200
10-Jul-2012
18:13
x86
Capiprovider.dll
6.1.7600.21263
53,248
10-Jul-2012
18:13
x86
Cngprovider.dll
6.1.7600.21263
56,320
10-Jul-2012
18:13
x86
Dimsroam.dll
6.1.7600.21263
39,424
10-Jul-2012
18:14
x86
Dpapiprovider.dll
6.1.7600.21263
49,152
10-Jul-2012
18:14
x86
Wincredprovider.dll
6.1.7600.21263
38,912
10-Jul-2012
18:17
x86
Adprovider.dll
6.1.7601.22048
51,200
10-Jul-2012
16:53
x86
Capiprovider.dll
6.1.7601.22048
53,248
10-Jul-2012
16:53
x86
Cngprovider.dll
6.1.7601.22048
56,320
10-Jul-2012
16:54
x86
Dimsroam.dll
6.1.7601.22048
39,424
10-Jul-2012
16:54
x86
Dpapiprovider.dll
6.1.7601.22048
49,152
10-Jul-2012
16:54
x86
Wincredprovider.dll
6.1.7601.22048
38,912
10-Jul-2012
16:57
x86
Dimsjob.dll
6.1.7600.21263
33,792
10-Jul-2012
18:14
x86
Dimsjob.dll
6.1.7601.22048
33,792
10-Jul-2012
16:54
x86
For all supported IA-64-based versions of Windows Server 2008 R2
For more information about how to configure and troubleshoot Certificate Services Client–Credential Roaming, visit the following Microsoft TechNet website: