Поправка: Подписаните команди на PowerShell работят по-бавно от неподписаните команди

Командната команда(cmdlet) е лека команда, която се използва в средата на Windows PowerShell . Средата за изпълнение на Windows PowerShell извиква тези команди в контекста на скриптове за автоматизация, които се предоставят в командния ред. Средата за изпълнение на Windows PowerShell също ги извиква програмно чрез API на Windows PowerShell(Windows PowerShell APIs) . В днешната публикация ще идентифицираме причината и след това ще предоставим решение за проблема с подписаните команди на PowerShell(PowerShell cmdlets) , които работят по-бавно от неподписаните команди на Windows .

Командите изпълняват действие и обикновено връщат обект на Microsoft .NET Framework към следващата команда в конвейера. За да напишете командлет, трябва да внедрите командлет клас, който произлиза от един от двата специализирани базови класа на командлет. Производният клас трябва:

  • Декларирайте(Declare) атрибут, който идентифицира извлечения клас като командлет.
  • Дефинирайте(Define) публични свойства, които са украсени с атрибути, които идентифицират публичните свойства като параметри на командлет.
  • Отменете един или повече от методите за обработка на входа за обработка на записи.

Подписаните команди на PowerShell работят по-бавно от неподписаните команди

Ще забележите, че подписаните команди на Windows PowerShell работят по-бавно от неподписаните команди.

Този проблем възниква, защото компютърът не може да се свърже със следните адреси за проверка на списъка за доверие на сертификати(Certificate Trust List) ( CTL ):

http://ctldl.windowsupdate.com/msdownload/update/v3/static/trustedr/en/disallowedcertstl.cab

http://ctldl.windowsupdate.com/msdownload/update/v3/static/trustedr/en/authrootstl.cab

Това се случва, когато има проблем с мрежата. Например, има неправилни настройки на прокси сървъра.

За да заобиколите този проблем, направете следното:

Подписаните команди на PowerShell работят по-бавно от неподписаните команди

Computer Configuration > Windows Settings > Security Settings > Public Key Policies

  • В прозореца с подробности вдясно щракнете двукратно върху Настройки за валидиране на пътя на сертификата(Certificate Path Validation Settings) .
  • Изберете раздела Мрежово извличане(Network Retrieval) .
  • Поставете отметка в квадратчето Дефиниране на тези настройки на правилата(Define these policy settings) .
  • Премахнете отметката от квадратчето Автоматично актуализиране на сертификати в Microsoft Root Certificate Program (препоръчително)(Automatically update certificates in the Microsoft Root Certificate Program (recommended) ) .
  • Щракнете върху Приложи(Apply) > OK.

Вече можете да излезете от редактора на локални групови правила(Local Group Policy Editor) .

That’s it!



About the author

Аз съм хардуерен инженер с над 10 години опит в работата с IOS и MacOS системи. Освен това бях учител във вечерен клас през последните 5 години и се научих да използвам Google Chrome. Уменията ми и в двете области ме правят перфектния кандидат за разработка на уебсайтове, графичен дизайн или работа по уеб сигурност.



Related posts