{"id":2821,"date":"2010-10-04T10:08:18","date_gmt":"2010-10-04T10:08:18","guid":{"rendered":"https:\/\/blogs.msdn.microsoft.com\/powershell\/2010\/10\/04\/a-jug-fills-drop-by-drop-quest-pki-cmdlets\/"},"modified":"2019-02-18T13:05:52","modified_gmt":"2019-02-18T20:05:52","slug":"a-jug-fills-drop-by-drop-quest-pki-cmdlets","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/powershell\/a-jug-fills-drop-by-drop-quest-pki-cmdlets\/","title":{"rendered":"\u201cA jug fills drop by drop\u201d \u2013 Quest PKI Cmdlets"},"content":{"rendered":"<p>The Buddha once said that, &ldquo;A jug fills drop by drop&rdquo;.&nbsp; In this case, the jug is universal PowerShell cmdlet coverage which is a really large jug!&nbsp; We&rsquo;ve never been confused on this point &ndash; I&rsquo;ve often referred to it as the &ldquo;30 year hole&rdquo; that we needed to dig ourselves out of.&nbsp; When PowerShell V1 shipped, it had a very small number of cmdlets.&nbsp; It was mostly used by advanced scripters to script their own solutions.&nbsp; Soon afterwards, the Exchange team released 400+ cmdlets and then it was reasonable for Exchange admins to manage their Exchange tasks.&nbsp; Quarter by quarter, release by release, more and more teams shipped cmdlet support or extended the cmdlet support they had already shipped and the bucket got more and more full.&nbsp; <\/p>\n<p>That is a great bit of philosophy but the reality is that if you need cmdlet coverage and it isn&rsquo;t there, you are sucking wind.&nbsp; If your job involves working much with PKI, you know what I mean.&nbsp; Today you have to run certutil.exe and parse the output or just use the GUI.&nbsp; <\/p>\n<p>With that, it&rsquo;s time for another great phrase, &ldquo;Nature abhors a vacuum&rdquo;.&nbsp; Where there is a need, the need get&rsquo;s filled over time.&nbsp; Sadly, the OS release cadence means that vacuums can exist for a while which is why god invented the community.&nbsp; Quest &ndash; the superstars that brought us the first AD cmdlets and PowerGUI have just released a new set of <a target=\"_blank\" href=\"http:\/\/wiki.powergui.org\/index.php\/QAD_cmdlets_reference#Certificate_and_Public_Key_Infrastructure_.28PKI.29_management\">PKI cmdlets<\/a>.&nbsp; These are part of their <a target=\"_blank\" href=\"http:\/\/www.quest.com\/powershell\/activeroles-server.aspx\">QAD cmdlets<\/a> so they are FREE and available without registration.&nbsp; <\/p>\n<p>How could you improve on that?&nbsp; Well, they also published a comprehensive PDF doc on <a target=\"_blank\" href=\"http:\/\/dmitrysotnikov.wordpress.com\/2010\/09\/22\/pki-management-with-powershell\/\">PKI and PKI management with PowerShell<\/a> as well as a <a target=\"_blank\" href=\"http:\/\/dmitrysotnikov.wordpress.com\/2010\/09\/07\/pki-management-console-1-5\/\">PowerPack<\/a> for PowerGUI.<\/p>\n<p>With these cmdlets, the number of things that become easy to do with PowerShell grows yet again.&nbsp; If it was hard to use PowerShell yesterday because you didn&rsquo;t have PKI support, now it is easy.&nbsp; Drop by drop, the jug fills.&nbsp; Day be day, more and more users will find that PowerShell meets their needs.&nbsp; <\/p>\n<p>Enjoy! <\/p>\n<p>Jeffrey Snover [MSFT] <br \/>Distinguished Engineer <br \/>Visit the Windows PowerShell Team blog at:&nbsp;&nbsp;&nbsp; <a href=\"http:\/\/blogs.msdn.com\/PowerShell\">http:\/\/blogs.msdn.com\/PowerShell<\/a> <br \/>Visit the Windows PowerShell ScriptCenter at:&nbsp; <a href=\"http:\/\/www.microsoft.com\/technet\/scriptcenter\/hubs\/msh.mspx\">http:\/\/www.microsoft.com\/technet\/scriptcenter\/hubs\/msh.mspx<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>The Buddha once said that, &ldquo;A jug fills drop by drop&rdquo;.&nbsp; In this case, the jug is universal PowerShell cmdlet coverage which is a really large jug!&nbsp; We&rsquo;ve never been confused on this point &ndash; I&rsquo;ve often referred to it as the &ldquo;30 year hole&rdquo; that we needed to dig ourselves out of.&nbsp; When PowerShell [&hellip;]<\/p>\n","protected":false},"author":600,"featured_media":13641,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[],"class_list":["post-2821","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-powershell"],"acf":[],"blog_post_summary":"<p>The Buddha once said that, &ldquo;A jug fills drop by drop&rdquo;.&nbsp; In this case, the jug is universal PowerShell cmdlet coverage which is a really large jug!&nbsp; We&rsquo;ve never been confused on this point &ndash; I&rsquo;ve often referred to it as the &ldquo;30 year hole&rdquo; that we needed to dig ourselves out of.&nbsp; When PowerShell [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/posts\/2821","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/users\/600"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/comments?post=2821"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/posts\/2821\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/media\/13641"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/media?parent=2821"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/categories?post=2821"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/powershell\/wp-json\/wp\/v2\/tags?post=2821"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}