Contents of this directory is archived and no longer updated.

Posts on this page:

Собственно, добавлять тут особо нечего :-). Детали нового релиза можно прочитать здесь и здесь. А остальное здесь:

>> PS PKI Module v0.9.2 <<

Однако, хочу добавить одну полезную (для меня) вещицу. На главной я вывешиваю список всех командлетов, которые есть в модуле с алиасами, если есть и ссылками на страницы wiki со справкой для командлетов. Некоторые могут подумать, что я это делаю вручную (первый раз я действительно делал в ручную и сильно устал). Конечно же, можно делать вручную, а можно и автоматически генерировать текст (если быть точнее, полный код HTML) при помощи PowerShell. Здесь есть много логики — ссылки на справку командлетов содержат их названия: http://pspki.codeplex.com/wikipage?title=CmdletName. Т.е. достаточно иметь основную часть ссылки и просто в конец добавлять название командлета. Однако, для ряда командлетов я применяю алиасы, чтобы можно было вводить команды покороче. Чтобы определить, есть ли у командлета алиасы, можно сделать вот так:

PS C:\> Get-Alias -Definition Get-Alias

CommandType     Name                                                Definition
-----------     ----                                                ----------
Alias           gal                                                 Get-Alias


PS C:\>

Вот так вы можете узнать, есть ли у командлета алиас или нету (тогда пошик насыпет вам много красного). Т.е. можно написать несколько строчек кода:

# через Get-Command получаем список команд, типа функции (по дефолту Get-Command
# выдаёт всё, что относится к командам, включая алиасы), которые относятся к
# конкретному модулю
gcm -Module pki -CommandType function | %{
# определяем, есть ли алиас у командлета
$alias = gal -Definition $_.name -ea 0
# если есть, тогда делаем код HTML с алиасом
if ($alias) {
@"
<li><a href="http://pspki.codeplex.com/wikipage?title=$($_.name)">$($_.name)</a> (Alias: <strong>$($alias.name)</strong>) </li>
"@    
} else {
# если нету, тогда просто код HTML без алиаса
@"
<li><a href="http://pspki.codeplex.com/wikipage?title=$($_.name)">$($_.name)</a> </li>
"@}
}

и всё. Просто в конце добавляете '| clip', чтобы он весь код HTML не выкидывал в консоль, а буфер обмена и получаете профит. Просто вставляете в редактор кодеплекса и всё.

Естественно, это была реклама пошика :-)

Ещё давно я задался задачей автоматизировать какие-то процессы мониторинга и конфигурации серверов Enterprise CA при помощи PowerShell. Я периодически публиковал здесь отрывки своего творения (Certificate Authority, Certificates, CryptoAPI). Учитывая объём работы, я периодически забрасывал эту затею, а потом возвращался, когда этого требовала жизненная необходимость. Так же неоднократно пытался найти себе компаньона, чтобы работа двигалась быстрее. На словах — лес рук, а на деле всё пришлось делать самому (написание кода, документации и отладка). Такие дела.

В модуле я старался учесть все трудности, которые встречаются при работе с certutil'ом (в плане юзабилити) и упростить их, а так же что-то добавить из собственного опыта. Так же активно использую конвейер, что зачастую позволяет обходиться ванлайнерами. И совсем недавно я решил остановиться на разработке модуля, который был в статусе вечной преальфы и постараться выжать из сырцовчерновиков что-то логически завершённое и собрать мир,ебилдRTM. Так сказать, что-то для старта. И вот он этот старт:

>> Public Key Infrastructure PowerShell module

Пока у меня есть ещё всяких идей, которые в будущем будут добавлены в модуль. Но следует учитывать, что проект живёт, пока у меня есть желание, т.к. денег он не приносит. И однажды с ним случится то же самое, что и с овер9000 опенсурсными проектами — станет трупиком. Но это всё в будущем, а пока можно получать фан от ещё живого модуля :-)