<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.technet.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Windows PKI blog : Configuration</title><link>http://blogs.technet.com/pki/archive/tags/Configuration/default.aspx</link><description>Tags: Configuration</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Automated CA installs using VB script on Windows Server 2008 and 2008R2 [UPDATED]</title><link>http://blogs.technet.com/pki/archive/2009/09/18/automated-ca-installs-using-vb-script-on-windows-server-2008-and-2008r2.aspx</link><pubDate>Fri, 18 Sep 2009 16:23:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:3281975</guid><dc:creator>shawncor</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.technet.com/pki/comments/3281975.aspx</comments><wfw:commentRss>http://blogs.technet.com/pki/commentrss.aspx?PostID=3281975</wfw:commentRss><description>&lt;P&gt;Starting with Windows Server 2008 the CA product team introduced a set of COM objects that can be used to control the installation of CAs. Using VBScript you can quickly automate the setup and installation of a CA.Below is a script that is being used by the product team in our testing of Certificate Services. SetupCA.vbs was designed to have the functionality present in the setup UI but in an easy command line that can be used in automation. Most of the functionality of the script is fairly straight forward in just setting properties on the setup object. A couple of features, like the key/cert re-use, take a bit of code to get the setting right.&lt;/P&gt;
&lt;P&gt;All of the ICertSrvSetup COM object properties and methods are documented in the MSDN at &lt;A title=http://msdn.microsoft.com/en-us/library/bb736371%28VS.85%29.aspx href="http://msdn.microsoft.com/en-us/library/bb736371%28VS.85%29.aspx" mce_href="http://msdn.microsoft.com/en-us/library/bb736371%28VS.85%29.aspx"&gt;http://msdn.microsoft.com/en-us/library/bb736371%28VS.85%29.aspx&lt;/A&gt;.&lt;/P&gt;
&lt;P align=left&gt;The setup script is attached to this post, simply click the link for setupca.vbs and save the file to your local system.&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Some example usages of the script:&lt;/P&gt;
&lt;P&gt;Install Enterprise Root CA&lt;BR&gt;Cscript setupca.vbs /ie /sn MyRootCA /sk 4096 /sp "RSA#Microsoft Software Key Storage Provider" /sa SHA256&lt;BR&gt;&lt;/P&gt;
&lt;P&gt;Install Standalone Sub CA&lt;BR&gt;Cscript setupca.vbs /it /sn MySubCA /sr MyParentCAMachine\MyRootCA /sk 384 /sp "ECDSA_P384#Microsoft Software Key Storage Provider" /sa SHA1&lt;BR&gt;&lt;/P&gt;
&lt;P&gt;Uninstall CA:&lt;BR&gt;Cscript setupca.vbs /uc&lt;BR&gt;&lt;/P&gt;
&lt;P&gt;Install Web Pages:&lt;BR&gt;Cscript setupca.vbs /iw /sr MyParentCAMachine\MyRootCA&lt;/P&gt;
&lt;P&gt;There is also a usage that lists all the parameters if you run the script without any arguments.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;UPDATE: Script has been updated to include option for offline requests using new /OR switch. Example:&lt;/P&gt;
&lt;P align=left&gt;Install Enterprise Sub CA saving request to a file: 
&lt;P align=left&gt;Cscript setupca.vbs /if /sn "My Sub CA" /sp "RSA#Microsoft Software Key Storage Provider" /sk 4096 /or "c:\temp\ca.req" &lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3281975" width="1" height="1"&gt;</description><enclosure url="http://blogs.technet.com/pki/attachment/3281975.ashx" length="43690" type="application/octet-stream" /><category domain="http://blogs.technet.com/pki/archive/tags/Configuration/default.aspx">Configuration</category><category domain="http://blogs.technet.com/pki/archive/tags/setup/default.aspx">setup</category><category domain="http://blogs.technet.com/pki/archive/tags/Certification+authority/default.aspx">Certification authority</category></item><item><title>How to configure the Windows Server 2008 CA Web Enrollment Proxy</title><link>http://blogs.technet.com/pki/archive/2009/04/23/how-to-configure-the-windows-server-2008-ca-web-enrollment-proxy.aspx</link><pubDate>Thu, 23 Apr 2009 08:57:46 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:3229586</guid><dc:creator>MS2065</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.technet.com/pki/comments/3229586.aspx</comments><wfw:commentRss>http://blogs.technet.com/pki/commentrss.aspx?PostID=3229586</wfw:commentRss><description>&lt;p&gt;A co-worker posted an interesting blog about configuring the Windows Server 2008 CA Web Enrollment proxy at &lt;/p&gt; &lt;p&gt;&lt;a href="http://blogs.technet.com/askds/archive/2009/04/22/how-to-configure-the-windows-server-2008-ca-web-enrollment-proxy.aspx"&gt;http://blogs.technet.com/askds/archive/2009/04/22/how-to-configure-the-windows-server-2008-ca-web-enrollment-proxy.aspx&lt;/a&gt;.&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3229586" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/pki/archive/tags/Configuration/default.aspx">Configuration</category></item><item><title>Certificate distribution and the Microsoft Terminal Services Client</title><link>http://blogs.technet.com/pki/archive/2009/02/09/certificate-distribution-and-the-microsoft-terminal-services-client.aspx</link><pubDate>Mon, 09 Feb 2009 19:30:18 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:3199368</guid><dc:creator>MS2065</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.technet.com/pki/comments/3199368.aspx</comments><wfw:commentRss>http://blogs.technet.com/pki/commentrss.aspx?PostID=3199368</wfw:commentRss><description>&lt;p&gt;A few days ago I worked in a test environment that also consists of a PKI. I used the Microsoft Terminal Services Client (mstsc.msc) for a while to connect to various machines in the test environment. One day, I helped a coworker troubleshooting a certificate problem in the test environment. From his machine, I connected via Microsoft Terminal Services Client to one of the test servers. While connected to the test server, I opened the Certificates MMC snap-in (certmgr.msc) and looked to the current user’s personal certificate store. Besides test certificates I also saw certificates with my personal name in the subject attribute. What was going on here, I thought? Where do these certificates come from? Time to investigate!&lt;/p&gt; &lt;h3&gt;&lt;u&gt;Investigation&lt;/u&gt;&lt;/h3&gt; &lt;p&gt;I opened one of the certificates with my name in it to find out more details. The certificate definitely belonged to me. Even worse, the &lt;em&gt;General&lt;/em&gt; tab of the certificate details told me that I have a private key for this certificate (“&lt;em&gt;You have a private key that corresponds to this certificate.&lt;/em&gt;”). I copied the serial number of that certificate from the &lt;em&gt;Details&lt;/em&gt; tab and opened a command prompt. What certificate service provider was used to issue that certificate?&lt;/p&gt; &lt;p&gt;The following command told me the answer:&lt;/p&gt; &lt;p&gt;&lt;font size="2" face="Courier New"&gt;certutil -v -silent -user -store My "05 05 1c 00 22 7f 3c dd fa 98" | find "Provider ="&lt;br&gt;&lt;/font&gt;&lt;font size="2" face="Courier New"&gt;Provider = Microsoft Base Smart Card Crypto Provider&lt;/font&gt;&lt;/p&gt; &lt;p&gt;I looked down to the notebook and noticed that no smartcard was sitting in the reader. That made me even wonder more. What has finally happened here?&lt;/p&gt; &lt;h3&gt;&lt;u&gt;Analysis&lt;/u&gt;&lt;/h3&gt; &lt;ol&gt; &lt;li&gt;When I connected to the test environment from my personal notebook, my smartcard was in the reader while I was using a Terminal Services session.  &lt;li&gt;I didn’t use a custom RDP file when I started the &lt;em&gt;Microsoft Terminal Services Client&lt;/em&gt; (&lt;em&gt;mstsc.msc&lt;/em&gt;), so the settings from %USERPROFILE%\documents\&lt;em&gt;Default.rdp&lt;/em&gt; configuration file have been applied.  &lt;li&gt;Under the &lt;em&gt;Options &amp;gt;&amp;gt;&amp;gt;&lt;/em&gt; button on the &lt;em&gt;Local Resources&lt;/em&gt; tab under the &lt;em&gt;More …&lt;/em&gt; button, &lt;em&gt;Smart cards&lt;/em&gt; was check-marked. That setting caused the Microsoft Terminal Services Client to map my smartcard into the remote desktop session.&lt;br&gt;&lt;a href="http://blogs.technet.com/blogfiles/pki/WindowsLiveWriter/e58b82edbdf9_75A6/image_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://blogs.technet.com/blogfiles/pki/WindowsLiveWriter/e58b82edbdf9_75A6/image_thumb.png" width="473" height="484"&gt;&lt;/a&gt;  &lt;li&gt;On the remote test server, the Certificate Propagation service (CertPropSvc) was running.&lt;/li&gt;&lt;/ol&gt; &lt;p&gt;The combination of those 4 conditions caused my personal certificates to appear in the user profile of the remote desktop session. The &lt;em&gt;Microsoft Terminal Services Client&lt;/em&gt; maps the smart card reader as a device into the remote desktop session. If a smartcard is available in the reader, the certificates become accessible within the remote desktop session. The &lt;em&gt;Certificate Propagation Service (CertPropSvc)&lt;/em&gt; reads certificates (not the private keys!) from a smartcard and puts them into the current user’s certificate store. This is exactly what has happened here.&lt;/p&gt; &lt;p&gt;The reason why the &lt;em&gt;Certificate Propagation Service &lt;/em&gt;is doing so, is related to certificate autoenrollment. When autoenrollment is triggered as part of the regular group policy interval (default is every 8 hours with a timescew of +/-90 minutes) it examines certificates in the personal store and determines if certificate enrollment, renewal or archival is required. To enable autoenrollment for certificates on smartcards, it is required that these certificates are registered in the personal store. Otherwise, autoenrollment would have to know on which devices (smartcards, tokens, …) certificates have ever been stored. For every certificate that is associated with a private key on the local system, an entry for the certificate service provider (CSP) exists in the key properties. Once autoenrollment has access to a certificate and the CSP, it is able to manage a certificate that is stored on a device.&lt;/p&gt; &lt;p&gt;A question remains, regarding the statement “&lt;em&gt;You have a private key that corresponds to this certificate.” &lt;/em&gt;on the &lt;em&gt;General&lt;/em&gt; page of the certificate details dialog. Why is that? How could the system tell me that there is a private key while my smart card is not inserted into the reader? Here is the answer: When the &lt;em&gt;Certificate Propagation Service &lt;/em&gt;reads a certificate from the card, it is a true statement that you have a private key for the certificate. The private key is available on the smartcard and therefore, in the certificate’s &lt;em&gt;key property&lt;/em&gt; (which is stored in the certificate store) it is noted that a private key is there. However, the &lt;em&gt;key property&lt;/em&gt; which links a certificate with a key is only written once when a certificate is copied into the certificate store. There is no later update mechanism that continuously verifies the &lt;em&gt;key property&lt;/em&gt;. So in my case, the &lt;em&gt;key property&lt;/em&gt; was created when the &lt;em&gt;Certificate Propagation Service &lt;/em&gt;read the certificate from my mapped smart card and at that time, the private key was available to the system. However, if the smart card with the key on it is removed from the system, the &lt;em&gt;key property&lt;/em&gt; is not updated.&lt;/p&gt; &lt;p&gt;To summarize, the &lt;em&gt;Certificate Propagation Service &lt;/em&gt;just copied my certificates into the certificate store while the private key was available on the smart card. The security of my private keys was not at risk at any time. Only the certificates – which can bee treated as public information anyways - have been disclosed.&lt;/p&gt; &lt;h3&gt;&lt;u&gt;Prevention and cleanup&lt;/u&gt;&lt;/h3&gt; &lt;p&gt;What have I done to avoid distribution of my certificates when working with remote desktop sessions? The simplest thing is to manually uncheck the Smart card mapping in the &lt;em&gt;Microsoft Terminal Services Client. &lt;/em&gt;This can also be done with group policies. Since all four conditions from above have to be true, disabling the Smart card mapping is effective. Additionally I stopped the &lt;em&gt;Certificate Propagation Service &lt;/em&gt;with a group policy on all servers in the test environment. This optional configuration step avoids unintended certificate distribution in case a unmanaged workstation still has enabled Smart card mapping.&lt;/p&gt; &lt;p&gt;Finally, I used the following command to manually remove the certificates from a user profile:&lt;/p&gt; &lt;p&gt;&lt;font face="Courier New"&gt;certutil –user –delstore My "Firstname Lastname"&lt;/font&gt;&lt;/p&gt; &lt;p&gt;In my case, manual cleanup was doable because the number of remote profiles was low. An automated solution would be required if a broader certificate store cleanup is required. But that’s another story …&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3199368" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/pki/archive/tags/Configuration/default.aspx">Configuration</category></item><item><title>Certificate Services setup failed with the following error: Element not found. 0x80070490</title><link>http://blogs.technet.com/pki/archive/2009/01/26/certificate-services-setup-failed-with-the-following-error-element-not-found-0x80070490.aspx</link><pubDate>Mon, 26 Jan 2009 09:41:22 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:3191383</guid><dc:creator>MS2065</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.technet.com/pki/comments/3191383.aspx</comments><wfw:commentRss>http://blogs.technet.com/pki/commentrss.aspx?PostID=3191383</wfw:commentRss><description>&lt;p&gt;Until Windows Server 2008 shipped, every Domain Controller had a readable and writable copy of the Active Directory schema, domain naming context and configuration naming context. This statement changed when we introduced the Read Only Domain Controller (RODC) role with Windows Server 2008. The RODC creates several new configuration scenarios for Active Directory integrated applications.&lt;/p&gt; &lt;p&gt;With this blog post I want to explain a situation where a Windows Server 2003 Enterprise CA setup fails with error &lt;em&gt;Element not found. 0x80070490&lt;/em&gt;. The setup error occurs when the intended Windows Server 2003 CA computer maintains a secure channel with a Windows Server 2008 RODC. In this case, the CA setup code cannot write new objects into the Active Directory configuration naming context. In Windows Server 2008 the CA setup code was updated to always make a connection to a writable Domain Controller in the beginning and then stick with that Domain Controller for all the operations done during setup.&lt;/p&gt; &lt;p&gt;To work around the Windows Server 2003 CA setup limitation, you could use the &lt;a href="http://technet.microsoft.com/en-us/library/cc784211.aspx"&gt;nltest.exe&lt;/a&gt; command from the &lt;a href="http://technet.microsoft.com/en-us/library/cc758202.aspx"&gt;Windows Support tools&lt;/a&gt;. To do so, make sure that a writable domain controller exists in the site that the Windows Server 2003 CA computer belongs to. If no writable domain controller is configured for the site, you must work with your Active Directory Enterprise administrator to change the site configuration so that a writable domain controller becomes available in the CA’s site.&lt;/p&gt; &lt;p&gt;To fix the problem, open a command prompt on the intended Windows Server 2003 CA to execute the following commands with local administrator permissions.&lt;/p&gt; &lt;p&gt;As a first step, query the DNS for a list of writable domain controllers in the domain. In this sample I use &lt;em&gt;contoso.com&lt;/em&gt; as domain name.&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&lt;font face="Courier New"&gt;nltest /dnsgetdc:contoso.com /WRITABLE&lt;/font&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;Next, reset the secure channel that is currently used between the Windows Server 2003 and the RODC.&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&lt;font face="Courier New"&gt;nltest /sc_reset&lt;/font&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;Finally, verify if the secure channel is now set up with a writable domain controller.&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&lt;font face="Courier New"&gt;nltest /sc_query:contoso.com&lt;/font&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;If the intended CA computer is now connected to a writable domain controller, restart the CA setup.&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3191383" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/pki/archive/tags/Configuration/default.aspx">Configuration</category></item><item><title>How to decommission a Windows enterprise certification authority and how to remove all related objects from Windows Server 2003</title><link>http://blogs.technet.com/pki/archive/2009/01/18/how-to-decommission-a-windows-enterprise-certification-authority-and-how-to-remove-all-related-objects-from-windows-server-2003.aspx</link><pubDate>Sun, 18 Jan 2009 23:03:32 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:3185411</guid><dc:creator>MS2065</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.technet.com/pki/comments/3185411.aspx</comments><wfw:commentRss>http://blogs.technet.com/pki/commentrss.aspx?PostID=3185411</wfw:commentRss><description>&lt;p&gt;Today I want to comment on the quite popular Microsoft Knowledgebase article &lt;a href="http://support.microsoft.com/kb/889250/en-us"&gt;&lt;em&gt;How to decommission a Windows enterprise certification authority and how to remove all related objects from Windows Server 2003 and from Windows 2000 Server&lt;/em&gt;&lt;/a&gt;&lt;em&gt;.&lt;/em&gt; I am referring to version 6.0 of the article with a review date of November 18th, 2008. You should be aware that the article has documentation bugs that need to be fixed. Until we are publishing a corrected version, you should consider the following information when applying the steps from the article.&lt;/p&gt; &lt;ol&gt; &lt;li&gt;In Step 6 L, the article asks you to delete all certificate templates. This is misleading information because it is only appropriate when you have already deleted ALL CAs in the Active Directory Forest. If there are still enterprise CAs in operation, certificate templates must not be deleted.  &lt;li&gt;The article does not point out to identify all of the CA objects in Active Directory (under the KRA container, for example), so some may be left around. To clean up after a CA that left objects around in Active Directory, run the following commands to see what AD objects remain:&lt;br&gt;&lt;font size="2" face="Courier New"&gt;&lt;br&gt;certutil –ds {CACommonName}&lt;br&gt;certutil –ds {CAMachineNetBiosName}&lt;br&gt;&lt;br&gt;&lt;/font&gt;For example, if the common name of the &lt;em&gt;CACommonName&lt;/em&gt; is called &lt;em&gt;CorpCA01&lt;/em&gt; and the &lt;em&gt;CAMachineNetBiosName&lt;/em&gt; is &lt;em&gt;CACorpServer&lt;/em&gt; you would perform the following commands:&lt;br&gt;&lt;br&gt;&lt;font size="2" face="Courier New"&gt;certutil –ds CorpCA01&lt;br&gt;certutil –ds CACorpServer&lt;br&gt;&lt;/font&gt;&lt;br&gt;Once you look over the list of DNs displayed, and are satisfied they are all related to the abandoned CA, you can change &lt;em&gt;-ds&lt;/em&gt; to &lt;em&gt;-dsDel&lt;/em&gt; and repeat the commands to delete the CA's objects with enterprise administrator permissions.&lt;br&gt; &lt;li&gt;In Step 6 M, the article says to delete the &lt;em&gt;NTAuthCertificates&lt;/em&gt; object. This is wrong information because this object should never be deleted - only CA certificates should be deleted from its &lt;em&gt;cACertificate&lt;/em&gt; attribute. Use the following command to see the full ldap path to your NtAuthCertificates object in your Active Directory.&lt;/li&gt;&lt;/ol&gt; &lt;blockquote&gt; &lt;p&gt;&lt;font size="2" face="Courier New"&gt;certutil -ds -v NtAuthCertificates&lt;/font&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;blockquote&gt; &lt;p&gt;With enterprise administrator permissions you can use the following command to delete certificates from within the &lt;em&gt;NTAuthCertificates&lt;/em&gt; store:&lt;/p&gt;&lt;/blockquote&gt; &lt;blockquote&gt; &lt;p&gt;&lt;font size="2" face="Courier New"&gt;certutil –viewdelstore "&lt;/font&gt;&lt;font size="2" face="Courier New"&gt;ldap:///CN=NtAuthCertificates,CN=Public Key Services,...,DC=...,DC=com?base?cACertificate"&lt;/font&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;ol&gt;&lt;/ol&gt; &lt;blockquote&gt; &lt;p&gt;The &lt;em&gt;-viewdelstore&lt;/em&gt; verb invokes the certificate selection U/I on the set of certificates in the specified attribute. You can view cert details, and cancel out of the selection dialog to make no change. If you select a certificate, it will be deleted when the U/I closes and the command completes execution.&lt;/p&gt;&lt;/blockquote&gt; &lt;blockquote&gt; &lt;p&gt;To clean up the &lt;em&gt;NTAuthCertificates&lt;/em&gt; you can also use the &lt;em&gt;PKIview&lt;/em&gt; MMC snap-in. It is part of the &lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=9d467a69-57ff-4ae7-96ee-b18c4790cffd&amp;amp;displaylang=en"&gt;Windows Server 2003 Resource Kit Tools&lt;/a&gt; and the &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=9ff6e897-23ce-4a36-b7fc-d52065de9960&amp;amp;DisplayLang=en"&gt;Microsoft Remote Server Administration Tools&lt;/a&gt; in Windows Server 2008 and Windows Vista.&lt;/p&gt;&lt;/blockquote&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3185411" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/pki/archive/tags/Configuration/default.aspx">Configuration</category></item><item><title>Suppressing certificate attributes in a CA certificate request</title><link>http://blogs.technet.com/pki/archive/2008/10/05/suppressing-certificate-attributes-in-a-ca-certificate-request.aspx</link><pubDate>Sun, 05 Oct 2008 13:10:18 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:3132472</guid><dc:creator>MS2065</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.technet.com/pki/comments/3132472.aspx</comments><wfw:commentRss>http://blogs.technet.com/pki/commentrss.aspx?PostID=3132472</wfw:commentRss><description>&lt;p&gt;When a PKCS#10 request for a CA certificate is generated, a pre-defined set of certificate attributes is included. This blog entry explains how to eliminate attributes that would go into the CA certificate request by default.&lt;/p&gt; &lt;p&gt;Imagine that you are setting up a new subordinate CA where the parent CA is a non Windows CA. The parent CA may not support or accept certificate attributes like the &lt;em&gt;certificate template&lt;/em&gt; &lt;em&gt;name&lt;/em&gt;. To exclude an attribute from the CA certificate request you must create a &lt;em&gt;capolicy.inf&lt;/em&gt; file in the &lt;em&gt;%WINDIR%&lt;/em&gt; directory before creating or renewing a CA certificate. The &lt;em&gt;capolicy.inf&lt;/em&gt; file lists the OIDs of the certificate extensions to be excluded in the Extensions section. See the Microsoft Knowledgebase for a list of &lt;a href="http://support.microsoft.com/kb/287547"&gt;Object IDs associated with Microsoft cryptography&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;The following sample &lt;em&gt;caplicy.inf&lt;/em&gt; file would exclude the CA version and the certificate template name from the CA certificate request.&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;&lt;font size="2" face="Courier New"&gt;[Version]&lt;br&gt;Signature= "$Windows NT$" &lt;/font&gt; &lt;p&gt;&lt;font size="2" face="Courier New"&gt;[Extensions]&lt;br&gt;1.3.6.1.4.1.311.21.1 =&lt;br&gt;1.3.6.1.4.1.311.21.7 =&lt;/font&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; Certificate attributes should only be removed from a certificate request if there is real demand for it. Never do it just for cosmetics!&lt;/p&gt; &lt;p&gt;When working with a &lt;em&gt;capolicy.inf&lt;/em&gt; file you should be aware of the behavior described in the Microsoft Knowledgebase article &lt;a href="http://support.microsoft.com/kb/927169"&gt;Custom extensions in the CAPolicy.inf file do not take effect after you renew the root CA certificate by using a new key&lt;/a&gt;. The article applies for Root and Subordinate CAs running on Windows Server 2003 SP1 or Windows Server 2003 SP2.&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3132472" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/pki/archive/tags/Configuration/default.aspx">Configuration</category></item><item><title>You cannot add V2 or V3 templates after an inplace upgrade was performed on a Windows Server 2008 enterprise CA</title><link>http://blogs.technet.com/pki/archive/2008/07/31/you-cannot-add-v2-or-v3-templates-after-an-inplace-upgrade-was-performed-on-a-windows-server-2008-enterprise-ca.aspx</link><pubDate>Thu, 31 Jul 2008 18:41:44 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:3096144</guid><dc:creator>MS2065</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.technet.com/pki/comments/3096144.aspx</comments><wfw:commentRss>http://blogs.technet.com/pki/commentrss.aspx?PostID=3096144</wfw:commentRss><description>&lt;p&gt;Technically, it is possible to install an enterprise CA on a Windows Server Standard edition. With this configuration, enterprise features of the certification authority are intentionally not available.&lt;/p&gt; &lt;p&gt;To enable the CA enterprise features, it is required to upgrade a Windows Server from Standard to Enterprise edition. To keep the existing enterprise CA configuration, it is recommended to just perform a Windows inplace upgrade. If you do this on a Windows Server 2008 you will recognize that only V1 certificate templates are available for assigning after the upgrade was performed.&lt;/p&gt; &lt;p&gt;To fix the problem, close the Certificate Services MMC snap-in and run the following commands with administrator permissions at a command-line on the CA computer:&lt;/p&gt; &lt;p&gt;&lt;font face="Courier New"&gt;certutil -setreg ca\setupstatus +512&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&lt;font face="Courier New"&gt;net stop certsvc&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&lt;font face="Courier New"&gt;net start certsvc&lt;/font&gt;&lt;/p&gt; &lt;p&gt;When you re-open the Certificate Services MMC snap-in, you are able to assign V1, V2 and V3 certificate templates to the certification authority.&lt;/p&gt; &lt;p&gt;[February 3, 2009 update] An official Microsoft Knowledgebase article is published under &lt;a title="http://support.microsoft.com/kb/967332" href="http://support.microsoft.com/kb/967332"&gt;http://support.microsoft.com/kb/967332&lt;/a&gt;.&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3096144" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/pki/archive/tags/Configuration/default.aspx">Configuration</category></item><item><title>How EffectiveDate (thisupdate), NextUpdate and NextCRLPublish are calculated</title><link>http://blogs.technet.com/pki/archive/2008/06/05/how-effectivedate-thisupdate-nextupdate-and-nextcrlpublish-are-calculated.aspx</link><pubDate>Thu, 05 Jun 2008 06:52:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:3066265</guid><dc:creator>MS2065</dc:creator><slash:comments>3</slash:comments><comments>http://blogs.technet.com/pki/comments/3066265.aspx</comments><wfw:commentRss>http://blogs.technet.com/pki/commentrss.aspx?PostID=3066265</wfw:commentRss><description>&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 face="Lucida Sans Unicode"&gt;The validity time of a certificate revocation list (CRL) is critical for every public key infrastructure. &lt;/FONT&gt;&lt;FONT color=#008080 face="Lucida Sans Unicode"&gt;By default, most applications verify the validity of certificates against a CRL.&lt;/FONT&gt; &lt;/FONT&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 face="Lucida Sans Unicode"&gt;Two CRL types exist: &lt;EM&gt;base&lt;/EM&gt; CRLs and &lt;EM&gt;delta&lt;/EM&gt; CRLs. In case where no delta CRL is used, certificates are treated as invalid if the base CRL is not available or expired. If a delta CRL is in use, the delta and base CRL must be available and valid to succeed with certificate verification.&lt;/FONT&gt; &lt;/FONT&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 face="Lucida Sans Unicode"&gt;The information provided in this article applies for both, the base CRL and the delta CRL generation.&lt;/FONT&gt; &lt;/FONT&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 face="Lucida Sans Unicode"&gt;When you look at a CRL, there is information about the &lt;I&gt;Next update&lt;/I&gt;, the &lt;I&gt;Next CRL Publish&lt;/I&gt; and the &lt;EM&gt;Effective date&lt;/EM&gt; of the CRL. The term &lt;I&gt;Effective date&lt;/I&gt; is used in the Windows certificate dialog while certutil.exe and the RFC name this field &lt;I&gt;thisupdate&lt;/I&gt;.&lt;/FONT&gt; &lt;/FONT&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT face="Lucida Sans Unicode"&gt;&lt;FONT color=#008080&gt;&lt;B&gt;Effective Date&lt;/B&gt; (aka &lt;EM&gt;thisupdate&lt;/EM&gt;) - The date that a CRL became effective. The effective time, by default, is set to 10 minutes prior to the current date and time to allow for clock synchronization issues.&lt;/FONT&gt;&lt;/FONT&gt; &lt;/FONT&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT face="Lucida Sans Unicode"&gt;&lt;FONT color=#008080&gt;&lt;B&gt;Next CLR Publish &lt;/B&gt;- This non-critical CRL extension indicates the date and time when a Windows CA will publish a new CRL. When a Windows computer uses a CRL for certificate verification it also examines the &lt;I&gt;Next CRL Publish&lt;/I&gt; extension. If the &lt;I&gt;Next CRL Publish&lt;/I&gt; date is already in the past, it connects to the CRL distribution points (referenced in the certificate) and attempts a download of a newer CRL. The time after the &lt;EM&gt;Next CRL Publish&lt;/EM&gt; and before the &lt;EM&gt;Next Update&lt;/EM&gt; is a buffer time to allow Windows computers retrieval of a CRL before the CRL has actually expired.&lt;/FONT&gt;&lt;/FONT&gt; &lt;/FONT&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT face="Lucida Sans Unicode"&gt;&lt;FONT color=#008080&gt;&lt;B&gt;Next Update - &lt;/B&gt;The date and time that a Windows client considers as the &lt;U&gt;expiration date&lt;/U&gt; of the CRL. From an operational viewpoint, this is the most critical information. If this date passes, Windows computers will invalidate certificates that are checked against this CRL.&lt;/FONT&gt;&lt;/FONT&gt; &lt;/FONT&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 face="Lucida Sans Unicode"&gt;Now we know the CRL attributes that control the CRL validity. The question is how these dates are calculated by a Windows CA. Read on to find out!&lt;/FONT&gt; &lt;/FONT&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 face="Lucida Sans Unicode"&gt;Under the Certification Services configuration hive in the registry two values control the overlap period for the base CRL and two registry values define the overlap period for delta CRL creation:&lt;/FONT&gt; &lt;/FONT&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New"&gt;HLKLM\SYSTEM\CurrentControlSet\Services\CertSvc\Configuration\&amp;lt;CA Name&amp;gt;:&lt;/FONT&gt; &lt;/FONT&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT size=2 face="Courier New"&gt;CRLOverlapPeriod=REG_SZ:Hours|Minutes&lt;BR&gt;&lt;/FONT&gt;&lt;FONT size=2 face="Courier New"&gt;CRLOverlapUnits=REG_DWORD:0x0&lt;BR&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New"&gt;CRLDeltaOverlapPeriod=REG_SZ:Hours|Minutes&lt;BR&gt;&lt;/FONT&gt;&lt;FONT face="Courier New"&gt;CRLDeltaOverlapUnits=REG_DWORD:0x0&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 face="Lucida Sans Unicode"&gt;You can verify the settings for the above registry keys on your CA computer with the following commands:&lt;/FONT&gt; &lt;/FONT&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New"&gt;certutil -getreg CA\CRLOv*&lt;/FONT&gt; &lt;/FONT&gt;
&lt;P&gt;&lt;FONT size=2 face="Courier New"&gt;certutil -getreg CA\CRLDeltaOv*&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 face="Lucida Sans Unicode"&gt;If the registry values are set and valid, the overlap period for a base or delta CRL is initially calculated by the CA as:&lt;/FONT&gt; &lt;/FONT&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT size=2 face="Courier New"&gt;OverlapPeriod = CRLOverlapUnits * CRLPeriod&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 face="Lucida Sans Unicode"&gt;If an invalid or no value is present under the &lt;EM&gt;CRLOverlapUnits&lt;/EM&gt; registry key, the &lt;EM&gt;OverlapPeriod&lt;/EM&gt; for a base CRL is initially calculated as 10 percent of the &lt;EM&gt;CRLPeriod&lt;/EM&gt; and &lt;EM&gt;CRLPeriodUnits&lt;/EM&gt; registry values:&lt;/FONT&gt; &lt;/FONT&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT size=2 face="Courier New"&gt;OverlapPeriod = (CRLPeriodUnits * CRLPeriod) / 10&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 face="Lucida Sans Unicode"&gt;If the &lt;EM&gt;OverlapPeriod&lt;/EM&gt; for a Delta CRL is calculated, the entire period of time specified as &lt;EM&gt;CRLDeltaPeriod&lt;/EM&gt; and &lt;EM&gt;CRLDeltaPeriodUnits&lt;/EM&gt; of the delta CRL is used.&lt;/FONT&gt; &lt;/FONT&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT size=2 face="Courier New"&gt;OverlapPeriod = (CRLDeltaPeriodUnits * CRLDeltaPeriod)&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT color=#008080 size=2 face="Lucida Sans Unicode"&gt;As a next step, the smaller value of either the so far calculated &lt;EM&gt;OverlapPeriod&lt;/EM&gt; or 12 hours is taken.&lt;/FONT&gt;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT size=2 face="Courier New"&gt;OverlapPeriod = min(OverlapPeriod, 12 hours)&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT color=#008080 face="Lucida Sans Unicode"&gt;&lt;FONT size=2&gt;If no &lt;EM&gt;CRLPeriodUnits&lt;/EM&gt; or &lt;EM&gt;CRLDeltaPeriodUnits&lt;/EM&gt; have been set, the &lt;EM&gt;OverlapPeriod&lt;/EM&gt; is 0 at this point. As a next step, the &lt;EM&gt;ClockSkewMinutes&lt;/EM&gt; parameter from the registry is taken into account. The &lt;/FONT&gt;&lt;A title="Certificate Services Tools and Settings" href="http://technet2.microsoft.com/windowsserver/en/library/7fe116af-971b-44d3-809e-00606c080a191033.mspx?mfr=true" mce_href="http://technet2.microsoft.com/windowsserver/en/library/7fe116af-971b-44d3-809e-00606c080a191033.mspx?mfr=true"&gt;&lt;EM&gt;&lt;FONT size=2&gt;ClockSkewMinutes&lt;/FONT&gt;&lt;/EM&gt;&lt;/A&gt;&lt;FONT size=2&gt; are primarily used to mitigate time differences between a client computer and the CA. To further calculate the &lt;EM&gt;OverlapPeriod&lt;/EM&gt;, the &lt;EM&gt;ClockSkewMinutes&lt;/EM&gt; is multiplied by 1.5 and then compared with the calculated &lt;EM&gt;OverlapPeriod&lt;/EM&gt;. The greater of both values wins.&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT face="Courier New"&gt;&lt;FONT size=2&gt;OverlapPeriod = max(OverlapPeriod, 1.5 * ClockSkewMinutes)&lt;B&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 face="Lucida Sans Unicode"&gt;In case the Overlap period is calculated for a base CRL, it cannot be longer than &lt;EM&gt;CRLPeriodUnits&lt;/EM&gt; * &lt;EM&gt;CRLPeriod&lt;/EM&gt;. Therefore the smaller value wins.&lt;/FONT&gt; &lt;/FONT&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT size=2 face="Courier New"&gt;OverlapPeriod = min(OverlapPeriod, CRLPeriodUnits * CRLPeriod)&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 face="Lucida Sans Unicode"&gt;Is the Overlap time calculated for a delta delta CRL, the &lt;EM&gt;OverlapPeriod&lt;/EM&gt; can not be longer than &lt;EM&gt;CRLDeltaPeriodUnits&lt;/EM&gt; * &lt;EM&gt;CRLDeltaPeriod&lt;/EM&gt;.&lt;/FONT&gt; &lt;/FONT&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT size=2 face="Courier New"&gt;OverlapPeriod = min(OverlapPeriod, CRLDeltaPeriodUnits * CRLDeltaPeriod)&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;B&gt;&lt;FONT size=2&gt;&lt;/FONT&gt;&lt;/B&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 face="Lucida Sans Unicode"&gt;Finally, the &lt;EM&gt;ClockSkewMinutes&lt;/EM&gt; are added to the calculated &lt;EM&gt;OverlapPeriod&lt;/EM&gt;.&lt;/FONT&gt; &lt;/FONT&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT size=2 face="Courier New"&gt;OverlapPeriod = OverlapPeriod + ClockSkewMinutes&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;B&gt;&lt;FONT size=2&gt;&lt;/FONT&gt;&lt;/B&gt;
&lt;P&gt;&lt;FONT color=#008080 size=2 face="Lucida Sans Unicode"&gt;The calculation of the &lt;EM&gt;OverlapPeriod&lt;/EM&gt; is done so far. The the actual calculation of the CRL values can start a next step: &lt;/FONT&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 face="Lucida Sans Unicode"&gt;The &lt;STRONG&gt;Effective Date&lt;/STRONG&gt; must not be earlier than the CA certificate became valid. This is because the CRL carries the CA certificate's signature.&lt;/FONT&gt; &lt;/FONT&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT size=2 face="Courier New"&gt;Effective Date = max(Current Time - ClockSkewMinutes, NotBefore_date_from_the_CA_certificate)&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 face="Lucida Sans Unicode"&gt;The &lt;B&gt;Next CRL Publish&lt;/B&gt; for a base CRL is calculated as the sum of current time plus &lt;EM&gt;CRLPeriod&lt;/EM&gt;:&lt;/FONT&gt; &lt;/FONT&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT size=2 face="Courier New"&gt;Next CRL Publish = Current Time + (CRLPeriodUnits * CRLPeriod)&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT color=#008080 face="Lucida Sans Unicode"&gt;The &lt;B&gt;Next CRL Publish&lt;/B&gt; for a delta CRL is calculated as the sum of current time plus &lt;EM&gt;CRLDeltaPeriod&lt;/EM&gt;:&lt;/FONT&gt; &lt;/FONT&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT size=2 face="Courier New"&gt;Next CRL Publish = Current Time + (CRLDeltaPeriodUnits * CRLDeltaPeriod)&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT face="Lucida Sans Unicode"&gt;&lt;FONT color=#008080&gt;The &lt;STRONG&gt;Next Update&lt;/STRONG&gt; is for a base CRL is calculated with the following formula:&lt;/FONT&gt;&lt;/FONT&gt; &lt;/FONT&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT size=2 face="Courier New"&gt;NextUpdate = min(Current Time + (CRLPeriodUnits * CRLPeriod) + OverlapPeriod + ClockSkewMinutes, NotAfter_date_from_the_CA_certificate)&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT face="Lucida Sans Unicode"&gt;&lt;FONT color=#008080&gt;The &lt;STRONG&gt;Next Update&lt;/STRONG&gt; is for a delta CRL is calculated with the following formula:&lt;/FONT&gt;&lt;/FONT&gt; &lt;/FONT&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT size=2 face="Courier New"&gt;NextUpdate = min(Current Time + (CRLDeltaPeriodUnits * CRLDeltaPeriod) + OverlapPeriod + ClockSkewMinutes, NotAfter_date_from_the_CA_certificate)&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT face="Lucida Sans Unicode"&gt;&lt;FONT color=#008080 size=2&gt;Since you have understood the algorithm now, you may want to examine the CRL on your system and see what the dates are set to. If you open the certificate management MMC snap-in from a command-line, you can see a list of all CRLs that have been generated by the CA so far. At a command-prompt, perform the following command:&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT size=2 face="Courier New"&gt;certsrv.msc /e&lt;/FONT&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&lt;FONT face="Lucida Sans Unicode"&gt;&lt;FONT color=#008080 size=2&gt;With the /e switch, an additional container is shown in the snap-in that lists all CRLs at a glance.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=3066265" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/pki/archive/tags/Configuration/default.aspx">Configuration</category></item><item><title>How to refresh the CRL cache on Windows Vista</title><link>http://blogs.technet.com/pki/archive/2007/09/13/how-to-refresh-the-crl-cache-on-windows-vista.aspx</link><pubDate>Thu, 13 Sep 2007 11:51:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:1948608</guid><dc:creator>MS2065</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.technet.com/pki/comments/1948608.aspx</comments><wfw:commentRss>http://blogs.technet.com/pki/commentrss.aspx?PostID=1948608</wfw:commentRss><description>&lt;p lang="en-US" style="font-size: 10pt; margin: 0in; color: teal; font-family: 'Lucida Sans Unicode'"&gt;By default, Windows is caching Certificate Revocation Lists (CRL) and CA certificates to quickly verify certificate chains. The downside of this behavior is that a newer CRL is not picked up by the client until the locally cached CRL has expired.&lt;/p&gt; &lt;p lang="en-US" style="font-size: 10pt; margin: 0in; color: teal; font-family: 'Lucida Sans Unicode'" mce_keep="true"&gt;&amp;nbsp;&lt;/p&gt; &lt;p lang="en-US" style="font-size: 10pt; margin: 0in; color: teal; font-family: 'Lucida Sans Unicode'"&gt;Windows versions before Windows Vista do not support deletion or a forced update of the CRL cache.&lt;/p&gt; &lt;p lang="en-US" style="font-size: 10pt; margin: 0in; color: teal; font-family: 'Lucida Sans Unicode'" mce_keep="true"&gt;&amp;nbsp;&lt;/p&gt; &lt;p lang="en-US" style="font-size: 10pt; margin: 0in; color: teal; font-family: 'Lucida Sans Unicode'"&gt;You can view what is in your current CRL cache with the following command:&lt;/p&gt; &lt;p lang="en-US" style="font-size: 10pt; margin: 0in; font-family: 'Courier New'"&gt;certutil -URLcache CRL&lt;/p&gt; &lt;p lang="en-US" style="font-size: 11pt; margin: 0in; font-family: calibri" mce_keep="true"&gt;&amp;nbsp;&lt;/p&gt; &lt;p lang="en-US" style="font-size: 10pt; margin: 0in; color: teal; font-family: 'Lucida Sans Unicode'"&gt;On Windows Vista, CAPI 2.0 has support to set a expiry date for the CRL and OCSP cache. You can use certutil to set a date and time when all cache entries become invalid. The following commands require administrative permission on the system.&lt;/p&gt; &lt;p lang="en-US" style="font-size: 10pt; margin: 0in; color: teal; font-family: 'Lucida Sans Unicode'" mce_keep="true"&gt;&amp;nbsp;&lt;/p&gt; &lt;p lang="en-US" style="font-size: 10pt; margin: 0in; color: teal; font-family: 'Lucida Sans Unicode'"&gt;To see when the cache was invalidated the last time, perform this command:&lt;/p&gt; &lt;p lang="en-US" style="font-size: 10pt; margin: 0in; font-family: 'Courier New'"&gt;certutil –getreg chain\ChainCacheResyncFiletime&lt;/p&gt; &lt;p lang="en-US" style="font-size: 10pt; margin: 0in; color: teal; font-family: 'Lucida Sans Unicode'" mce_keep="true"&gt;&amp;nbsp;&lt;/p&gt; &lt;blockquote&gt; &lt;p lang="en-US" style="font-size: 10pt; margin: 0in; color: teal; font-family: 'Lucida Sans Unicode'"&gt;&lt;u&gt;Note:&lt;/u&gt; If the &lt;em&gt;ChainCacheResyncFiletime&lt;/em&gt; was never set manually before, the registry key does not exist and the following error message is shown:&lt;/p&gt; &lt;blockquote&gt; &lt;p lang="en-US" style="font-size: 10pt; margin: 0in; color: teal; font-family: 'Lucida Sans Unicode'"&gt;&lt;em&gt;CertUtil: -getreg command FAILED: 0x80070002 (WIN32: 2)&lt;/em&gt;&lt;/p&gt; &lt;p lang="en-US" style="font-size: 10pt; margin: 0in; color: teal; font-family: 'Lucida Sans Unicode'"&gt;&lt;em&gt;CertUtil: The system cannot find the file specified.&lt;/em&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p lang="en-US" style="font-size: 10pt; margin: 0in; color: teal; font-family: 'Lucida Sans Unicode'" mce_keep="true"&gt;The error can be ignored because default CRL caching takes place in this case.&lt;/p&gt;&lt;/blockquote&gt; &lt;p lang="en-US" style="font-size: 10pt; margin: 0in; color: teal; font-family: 'Lucida Sans Unicode'"&gt;If the @now parameter is used, all cached entries are invalidated immediately.&lt;/p&gt; &lt;p lang="en-US" style="font-size: 10pt; margin: 0in; font-family: 'Courier New'"&gt;certutil -setreg chain\ChainCacheResyncFiletime @now&lt;/p&gt; &lt;p lang="en-US" style="font-size: 10pt; margin: 0in; color: teal; font-family: 'Lucida Sans Unicode'" mce_keep="true"&gt;&amp;nbsp;&lt;/p&gt; &lt;p lang="en-US" style="font-size: 10pt; margin: 0in; color: teal; font-family: 'Lucida Sans Unicode'"&gt;To disable temporarily the cache until after now plus 3 days and 6 hours, use this command. Setting the registry value to a future date implies that no cache entries will be used until after the date specified. The value of such a configuration is questionable.&lt;/p&gt; &lt;p lang="en-US" style="font-size: 10pt; margin: 0in; font-family: 'Courier New'"&gt;certutil –setreg chain\ChainCacheResyncFiletime @now+3:6&lt;/p&gt; &lt;p lang="en-US" style="font-size: 10pt; margin: 0in; color: teal; font-family: 'Lucida Sans Unicode'" mce_keep="true"&gt;&amp;nbsp;&lt;/p&gt; &lt;p lang="en-US" style="font-size: 10pt; margin: 0in; color: teal; font-family: 'Lucida Sans Unicode'"&gt;To delete a registry value:&lt;/p&gt; &lt;p lang="en-US" style="font-size: 10pt; margin: 0in; font-family: 'Courier New'"&gt;certutil –delreg chain\ChainCacheResyncFiletime&lt;/p&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=1948608" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/pki/archive/tags/Configuration/default.aspx">Configuration</category></item><item><title>How to re-install the default certificate templates?</title><link>http://blogs.technet.com/pki/archive/2007/08/06/how-to-re-install-the-default-certificate-templates.aspx</link><pubDate>Mon, 06 Aug 2007 21:58:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:1713601</guid><dc:creator>MS2065</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.technet.com/pki/comments/1713601.aspx</comments><wfw:commentRss>http://blogs.technet.com/pki/commentrss.aspx?PostID=1713601</wfw:commentRss><description>&amp;nbsp; 
&lt;P lang=en-US style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.375in; COLOR: teal; FONT-FAMILY: 'Lucida Sans Unicode'"&gt;When you launch the certificate templates MMC snap-in (certtmpl.msc) for the first time, the certificate templates are installed automatically in the background. Installing the templates is independent of the availability of an enterprise CA. Enterprise Administrator permissions are required to successfully install the templates.&lt;/P&gt;
&lt;P lang=en-US style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.375in; COLOR: teal; FONT-FAMILY: 'Lucida Sans Unicode'"&gt;That's nice and convenient but what happens if you accidentally deleted the template objects from Active Directory? The templates can be viewed and also deleted (with appropriate permissions) through the Active Directory Sites and Services MMC snap-in (dssites.msc) or any other LDAP client can be used.&lt;/P&gt;
&lt;P lang=en-US style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.375in; COLOR: teal; FONT-FAMILY: 'Lucida Sans Unicode'" mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P lang=en-US style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.375in; COLOR: teal; FONT-FAMILY: 'Lucida Sans Unicode'" mce_keep="true"&gt;&lt;A href="http://blogs.technet.com/photos/pki/picture1713635.aspx" target=_blank&gt;&lt;IMG src="http://blogs.technet.com/photos/pki/images/1713635/original.aspx" border=0&gt;&lt;/A&gt;&amp;nbsp;&lt;/P&gt;
&lt;P lang=en-US style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.375in; COLOR: teal; FONT-FAMILY: 'Lucida Sans Unicode'" mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P lang=en-US style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.375in; COLOR: teal; FONT-FAMILY: 'Lucida Sans Unicode'" mce_keep="true"&gt;So, what to do if the templates or the OID container have disappeared? With a single command-line, you can get them back. As prerequisite to install the certificate templates you must have create child access to the template container in Active Directory which is the default setting for an enterprise administrator.&lt;/P&gt;
&lt;P lang=en-US style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.375in; COLOR: teal; FONT-FAMILY: 'Lucida Sans Unicode'" mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P lang=en-US style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.375in; COLOR: teal; FONT-FAMILY: 'Lucida Sans Unicode'"&gt;If you are running Windows Server 2003, use the following command with enterprise administrator permissions:&lt;/P&gt;
&lt;P lang=en-US style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.375in; COLOR: teal; FONT-FAMILY: 'Lucida Sans Unicode'" mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P lang=en-US style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.375in; FONT-FAMILY: 'Courier New'"&gt;regsvr32 /i:i /n certcli.dll&lt;/P&gt;
&lt;P lang=en-US style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.375in; COLOR: teal; FONT-FAMILY: 'Lucida Sans Unicode'" mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P lang=en-US style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.375in; COLOR: teal; FONT-FAMILY: 'Lucida Sans Unicode'"&gt;If you have Windows Vista or Windows Server 2008 already in place, certutil.exe understands a new verb to re-install the templates. Certutil is included in all Windows Vista SKUs by default. &lt;/P&gt;
&lt;P lang=en-US style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.375in; COLOR: teal; FONT-FAMILY: 'Lucida Sans Unicode'" mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P lang=en-US style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.375in; FONT-FAMILY: 'Courier New'"&gt;certutil -installdefaulttemplates&lt;/P&gt;
&lt;P lang=en-US style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.375in; FONT-FAMILY: 'Lucida Sans Unicode'" mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P lang=en-US style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.375in; COLOR: teal; FONT-FAMILY: 'Lucida Sans Unicode'"&gt;After performing one of the above commands you must restart the CA service.&lt;/P&gt;
&lt;P lang=en-US style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.375in; COLOR: teal; FONT-FAMILY: 'Lucida Sans Unicode'" mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P lang=en-US style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.375in; COLOR: teal; FONT-FAMILY: 'Lucida Sans Unicode'"&gt;The following two knowledgebase articles describe scenarios where re-installation of certificate templates can make sense:&lt;/P&gt;
&lt;P lang=en-US style="FONT-SIZE: 11pt; MARGIN: 0in 0in 0in 0.375in; FONT-FAMILY: 'Lucida Sans Unicode'" mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL style="MARGIN-TOP: 0in; MARGIN-BOTTOM: 0in; MARGIN-LEFT: 0.375in; DIRECTION: ltr; unicode-bidi: embed" type=disc&gt;
&lt;LI lang=en-US style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px; VERTICAL-ALIGN: middle"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: teal; FONT-FAMILY: 'Lucida Sans Unicode'"&gt;You receive an error message, and event ID 53 is logged when a client computer requests a certificate from a Windows Server 2003 SP1-based CA&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Lucida Sans Unicode'"&gt; (&lt;/SPAN&gt;&lt;A href="http://support.microsoft.com/kb/932457" mce_href="http://support.microsoft.com/kb/932457"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Lucida Sans Unicode'"&gt;http://support.microsoft.com/kb/932457&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Lucida Sans Unicode'"&gt;).&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI lang=en-US style="MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px; VERTICAL-ALIGN: middle"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: teal; FONT-FAMILY: 'Lucida Sans Unicode'"&gt;Event ID 77 is logged in the Application log when the CertSvc service starts on a CA server that is running Windows Server 2003 with Service Pack 1&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Lucida Sans Unicode'"&gt; (&lt;/SPAN&gt;&lt;A href="http://support.microsoft.com/kb/931354" mce_href="http://support.microsoft.com/kb/931354"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Lucida Sans Unicode'"&gt;http://support.microsoft.com/kb/931354&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Lucida Sans Unicode'"&gt;).&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=1713601" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/pki/archive/tags/Configuration/default.aspx">Configuration</category></item><item><title>The missing EDIT button in the CA properties extensions tab</title><link>http://blogs.technet.com/pki/archive/2007/05/27/the-missing-edit-button-in-the-ca-properties-extensions-tab.aspx</link><pubDate>Sun, 27 May 2007 15:54:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:1074023</guid><dc:creator>MS2065</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.technet.com/pki/comments/1074023.aspx</comments><wfw:commentRss>http://blogs.technet.com/pki/commentrss.aspx?PostID=1074023</wfw:commentRss><description>&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: #31849b; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-themecolor: accent5; mso-themeshade: 191; mso-ansi-language: EN-US"&gt;To adjust the CRL and AIA distribution point there are at least three&amp;nbsp;choices to do it. The most familiar way to change the distribution point might be through the CA MMC user interface. The second way is to directly change the registry key &lt;I style="mso-bidi-font-style: normal"&gt;CACertPublicationURLs&lt;/I&gt; or &lt;I style="mso-bidi-font-style: normal"&gt;CRLPublicationURLs&lt;/I&gt; with regedit.exe. Alternatively, you can use certutil -setreg to change these keys in the registry.&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: #31849b; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-themecolor: accent5; mso-themeshade: 191; mso-ansi-language: EN-US"&gt;While having full editing control over the multi-valued registry key, you may miss an edit button in the UI to conveniently change an existing entry without retyping the full URL.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: #31849b; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-themecolor: accent5; mso-themeshade: 191; mso-ansi-language: EN-US"&gt;Only very few people are aware that you can use a copy/paste trick to overcome the missing edit button. Here are the steps to copy an existing CRL or AIA entry and create a new one:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;OL style="MARGIN-TOP: 0cm" type=1&gt;
&lt;LI class=MsoNormal style="MARGIN: 0cm 0cm 10pt; COLOR: #31849b; mso-themecolor: accent5; mso-themeshade: 191; mso-list: l0 level1 lfo1"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-ansi-language: EN-US"&gt;Open the Certification Authority MMC snap-in.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI class=MsoNormal style="MARGIN: 0cm 0cm 10pt; COLOR: #31849b; mso-themecolor: accent5; mso-themeshade: 191; mso-list: l0 level1 lfo1"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-ansi-language: EN-US"&gt;&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-ansi-language: EN-US"&gt;Open the CA properties.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI class=MsoNormal style="MARGIN: 0cm 0cm 10pt; COLOR: #31849b; mso-themecolor: accent5; mso-themeshade: 191; mso-list: l0 level1 lfo1"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-ansi-language: EN-US"&gt;Go to the &lt;B style="mso-bidi-font-weight: normal"&gt;Extensions&lt;/B&gt; tab.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI class=MsoNormal style="MARGIN: 0cm 0cm 10pt; COLOR: #31849b; mso-themecolor: accent5; mso-themeshade: 191; mso-list: l0 level1 lfo1"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-ansi-language: EN-US"&gt;Select the entry that you want to copy from the list of available CRL or AIA entries.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI class=MsoNormal style="MARGIN: 0cm 0cm 10pt; COLOR: #31849b; mso-themecolor: accent5; mso-themeshade: 191; mso-list: l0 level1 lfo1"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-ansi-language: EN-US"&gt;Press &lt;B style="mso-bidi-font-weight: normal"&gt;&amp;lt;CTRL&amp;gt;+&amp;lt;C&amp;gt;&lt;/B&gt; to copy the entry into the clip-board.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI class=MsoNormal style="MARGIN: 0cm 0cm 10pt; COLOR: #31849b; mso-themecolor: accent5; mso-themeshade: 191; mso-list: l0 level1 lfo1"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-ansi-language: EN-US"&gt;Click the &lt;B style="mso-bidi-font-weight: normal"&gt;Add…&lt;/B&gt; button and press &lt;B style="mso-bidi-font-weight: normal"&gt;&amp;lt;CTRL&amp;gt;+&amp;lt;V&amp;gt;&lt;/B&gt;. The paste operation is certainly not limited to the Add Location window. Once the URL has been copied into the clipboard it can be pasted everywhere.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI class=MsoNormal style="MARGIN: 0cm 0cm 10pt; COLOR: #31849b; mso-themecolor: accent5; mso-themeshade: 191; mso-list: l0 level1 lfo1"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-ansi-language: EN-US"&gt;Change the distribution point as appropriate.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=1074023" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/pki/archive/tags/Configuration/default.aspx">Configuration</category><category domain="http://blogs.technet.com/pki/archive/tags/usability/default.aspx">usability</category></item><item><title>Manually publishing a CA certificate or CRL into a LDAP store</title><link>http://blogs.technet.com/pki/archive/2007/04/13/manually-publishing-a-ca-certificate-or-crl-into-a-ldap-store.aspx</link><pubDate>Fri, 13 Apr 2007 12:27:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:759067</guid><dc:creator>MS2065</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.technet.com/pki/comments/759067.aspx</comments><wfw:commentRss>http://blogs.technet.com/pki/commentrss.aspx?PostID=759067</wfw:commentRss><description>&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: #31849b; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-themecolor: accent5; mso-themeshade: 191; mso-ansi-language: EN-US"&gt;The CA is automatically publishing its own certificates and related CRLs into Active Directory if a LDAP reference is configured in the CA property “Extensions”.&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: #31849b; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-themecolor: accent5; mso-themeshade: 191; mso-ansi-language: EN-US"&gt;If you are using a different LDAP server (such as Microsoft &lt;A class="" title="Active Directory Application Mode" href="http://www.microsoft.com/adam/" mce_href="http://www.microsoft.com/adam/"&gt;ADAM&lt;/A&gt;) to make the CA certificate and CRL available, certificates and CRLs must be published manually. The easiest way to do that is with certutil.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: #31849b; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-themecolor: accent5; mso-themeshade: 191; mso-ansi-language: EN-US"&gt;Perform the following command to publish the CRL manually into a LDAP-store.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; COLOR: black; LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; mso-themecolor: text1; mso-ansi-language: EN-US"&gt;certutil –addstore "LDAP://[server]/[DN]?certificateRevocationList?base?objectclass=cRLDistributionPoint" [CRL-File]&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: #31849b; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-themecolor: accent5; mso-themeshade: 191; mso-ansi-language: EN-US"&gt;Replace [server] with the name of the LDAP server where you have write permissions.&lt;BR&gt;Replace [DN] with the path that you have used in the CA configuration.&lt;BR&gt;Replace [CRL-File] with the file name of the CRL that you want to publish.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: #31849b; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-themecolor: accent5; mso-themeshade: 191; mso-ansi-language: EN-US"&gt;Here is the command to publish a CA certificate manually:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; COLOR: black; LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; mso-themecolor: text1; mso-ansi-language: EN-US"&gt;certutil –addstore "LDAP://[server]/[DN]?cACertificate?base?objectClass=certificationAuthority" [cert-file]&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: #31849b; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-themecolor: accent5; mso-themeshade: 191; mso-ansi-language: EN-US; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;To manually publish a CA certificate or CRL into Active Directory you should still use &lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; COLOR: black; LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; mso-themecolor: text1; mso-ansi-language: EN-US; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;certutil –dspublish&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: #31849b; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-themecolor: accent5; mso-themeshade: 191; mso-ansi-language: EN-US; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt; instead of &lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 8pt; COLOR: black; LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'; mso-themecolor: text1; mso-ansi-language: EN-US; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;certutil –addstore&lt;/SPAN&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: #31849b; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-themecolor: accent5; mso-themeshade: 191; mso-ansi-language: EN-US; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;.&lt;/SPAN&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=759067" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/pki/archive/tags/certutil/default.aspx">certutil</category><category domain="http://blogs.technet.com/pki/archive/tags/Configuration/default.aspx">Configuration</category></item><item><title>How to find out the max size of certificate attributes</title><link>http://blogs.technet.com/pki/archive/2007/02/26/how-to-find-out-the-max-size-of-certificate-attributes.aspx</link><pubDate>Mon, 26 Feb 2007 10:52:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:662741</guid><dc:creator>MS2065</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.technet.com/pki/comments/662741.aspx</comments><wfw:commentRss>http://blogs.technet.com/pki/commentrss.aspx?PostID=662741</wfw:commentRss><description>&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: #31849b; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-themecolor: accent5; mso-themeshade: 191; mso-ansi-language: EN-US"&gt;The other day I was asked how many subject alternate names will fit into a single certificate. I asked myself what the best way would be to find out. After a short time of thinking I decided to look at the schema defintion of the CA database. The schema will tell for sure how many characters fit into a certain attribute because the database has to store every attribute for a certificate or a request.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: #31849b; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-themecolor: accent5; mso-themeshade: 191; mso-ansi-language: EN-US"&gt;So the answer is pretty simple here: There is no limit how many items fit into an attribute but there is a limit regarding the total size.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: #31849b; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-themecolor: accent5; mso-themeshade: 191; mso-ansi-language: EN-US"&gt;To determine the max size of a certificate attribut, just run the following command on the CA computer:&lt;/SPAN&gt;&lt;/P&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: #31849b; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-themecolor: accent5; mso-themeshade: 191; mso-ansi-language: EN-US"&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'"&gt;&lt;FONT size=3&gt;&lt;FONT color=#000000&gt;certutil -schema&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/SPAN&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: #31849b; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-themecolor: accent5; mso-themeshade: 191; mso-ansi-language: EN-US"&gt;The output shows information about the max. sizes. Once you have this information, just count the number of characters for an attribute in your certificate request an you know if it fits.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN lang=EN-US style="FONT-SIZE: 10pt; COLOR: #31849b; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-themecolor: accent5; mso-themeshade: 191; mso-ansi-language: EN-US"&gt;Carsten&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=662741" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/pki/archive/tags/certutil/default.aspx">certutil</category><category domain="http://blogs.technet.com/pki/archive/tags/Configuration/default.aspx">Configuration</category></item><item><title>How to exclude the certificate template name from certificates to be issued</title><link>http://blogs.technet.com/pki/archive/2007/01/03/how-to-exclude-the-certificate-template-name-from-certificates-to-be-issued.aspx</link><pubDate>Wed, 03 Jan 2007 15:02:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:579662</guid><dc:creator>MS2065</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.technet.com/pki/comments/579662.aspx</comments><wfw:commentRss>http://blogs.technet.com/pki/commentrss.aspx?PostID=579662</wfw:commentRss><description>&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN style="COLOR: #31849b; mso-themecolor: accent5; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;By default, a Windows CA enterprise CA adds information about the used certificate template to issued certificates. These certificate attributes are especially important to perform certificate autoenrollement.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;However, in heterogeneous environments you may have the requirement not to include the certificate template names in certificates.&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN style="COLOR: #31849b; mso-themecolor: accent5; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;To avoid adding the certificate templates information into newly issued certificates, perform the following commands with administrator permissions&amp;nbsp;on&amp;nbsp;your enterprise CA at a command-line:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'"&gt;certutil -setreg policy\DisableExtensionList +1.3.6.1.4.1.311.20.2&lt;BR&gt;certutil -setreg policy\DisableExtensionList +1.3.6.1.4.1.311.21.7&lt;BR&gt;net stop certsvc&lt;BR&gt;net start certsvc&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN style="COLOR: #31849b; mso-themecolor: accent5; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;The configuration change applies CA wide and does not affect already issued certificates. Remember that autoenrollment will break if you add the OIDs to the list of disabled extensions. You must not apply this change on a CA where clients enroll certificates automatically from.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN style="COLOR: #31849b; mso-themecolor: accent5; mso-themeshade: 191"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;To add the template certificate name to issued certificates again, remove the OIDs from the list of disabled extensions. Perform these commands with administrator permissions on your enterprise CA:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'"&gt;certutil -setreg policy\DisableExtensionList -1.3.6.1.4.1.311.20.2&lt;BR&gt;certutil -setreg policy\DisableExtensionList -1.3.6.1.4.1.311.21.7&lt;BR&gt;net stop certsvc&lt;BR&gt;net start certsvc&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN style="COLOR: #31849b; mso-themecolor: accent5; mso-themeshade: 191"&gt;&lt;FONT face=Calibri size=3&gt;For a complete List of OIDs used by the Microsoft cryptography, see the following Knowledge base article: &lt;/FONT&gt;&lt;A href="http://support.microsoft.com/kb/287547/en-us"&gt;&lt;FONT face=Calibri size=3&gt;http://support.microsoft.com/kb/287547/en-us&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt;.&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Courier New'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=579662" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/pki/archive/tags/Configuration/default.aspx">Configuration</category></item><item><title>A file distribution point must follow the UNC syntax</title><link>http://blogs.technet.com/pki/archive/2006/12/04/a-crl-file-distribution-point-must-follow-the-unc-syntax.aspx</link><pubDate>Mon, 04 Dec 2006 23:00:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:540859</guid><dc:creator>MS2065</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.technet.com/pki/comments/540859.aspx</comments><wfw:commentRss>http://blogs.technet.com/pki/commentrss.aspx?PostID=540859</wfw:commentRss><description>&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #31849b; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-themecolor: accent5; mso-themeshade: 191"&gt;Several whitepapers explain the three valid protocols (HTTP, LDAP or&amp;nbsp;FILE) to retrieve a Certificate Revocation List (CRL) or the Authority Information Access (AIA). However, none of these whitepapers is specific about the syntax for the file protocol (file://).&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #31849b; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-themecolor: accent5; mso-themeshade: 191"&gt;The simple answer is that a CRL or AIA file reference must follow the UNC syntax, for example: &lt;SPAN style="COLOR: #31849b; mso-themecolor: accent5; mso-themeshade: 191"&gt;\\myserver\myshare\mycrl.crl&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #31849b; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-themecolor: accent5; mso-themeshade: 191"&gt;Certificates containing an absolute path like C:\myfolder\mycrl.crl will result in an error message when the system is verifying the validity of a certificate.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0cm 0cm 10pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: #31849b; LINE-HEIGHT: 115%; FONT-FAMILY: 'Lucida Sans Unicode','sans-serif'; mso-themecolor: accent5; mso-themeshade: 191"&gt;Carsten&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.technet.com/aggbug.aspx?PostID=540859" width="1" height="1"&gt;</description><category domain="http://blogs.technet.com/pki/archive/tags/Configuration/default.aspx">Configuration</category></item></channel></rss>