Hogyan kell egy PowerShell script Pavlenko Evgeniy

Action végrehajtási politika hatással van az összes felhasználóra vonatkozik. Ez a HKEY_LOCAL_MACHINE.

A fajta politikát választja, én személyesen tanácsot AllSigned. Engedélyezze politika lehet 2 kétféleképpen

1) Team PowerShell - Set-ExecutionPolicy <имя_политики>

2) A szabály Grupovoy Politkom. Megtalálható itt Computer Configuration> Policies-> Felügyeleti templates-> Windows Components

A tanúsítványok és aláírás script.

A saját aláírási tanúsítvány szeretné használni az eszközt, hogy hozzon létre egy tanúsítványt (MakeCert.exe). Etotinstrument tartalmazza a készlet Microsoft .NET Framework SDK 1.1 és Microsoft Windows SDK.

makecert -n «CN = PowerShell Helyi Certificate Root» -a sha1 -eku 1.3.6.1.5.5.7.3.3 -r -sV root.pvk root.cer -p Root -SR localMachine
makecert -PE -n «CN = PowerShell Felhasználói» -p MY -a sha1 -eku 1.3.6.1.5.5.7.3.3 -iv root.pvk -ic root.cer

Ezután meg kell vizsgálni, hogy a tanúsítvány jön létre. Ehhez hajtsa végre a parancsot PowerShell

get-childitem cert: CurrentUsermy -codesigning

Vagy hozza létre a tanúsítványokat központ.

Hogy aláírja a script PowerShell elvégzésére.

$ Cert = @ (Get-ChildItem cert: CurrentUserMy -codesigning) [0]
Set-AuthenticodeSignature add-signature.ps1 $ cert

Hadd hívjam fel a figyelmet, hogy a probléma, hogy vstrechaetsya. Amikor végző aláírása script, akkor kap UnknownError. Általában ez a probléma, hogy a fájl kódolás nem illik aláírni. A megoldás egyszerű, egy scriptet füzetében, és podpishyte. Leírni állapotának teljesítése

(Set-AuthenticodeSignature $ Cert) .statusmessage

Ahhoz, szkriptek nem esküszöm, hogy a kiadó nem bízik, hogy kézzel vagy egy csoportházirend a listát a megbízható kiadók.