Semnarea scripturilor digital în Windows PowerShell

Finalizat

Atunci când utilizați scripturi Windows PowerShell în mediul de producție, ar trebui să existe un proces de aprobare pentru a verifica dacă acele scripturi au fost testate. Procesul de aprobare va varia în funcție de dimensiunea organizației și de nivelul de birocrație, dar ar trebui să existe un proces de aprobare.

O modalitate de a formaliza procesul de aprobare pentru scripturile utilizate într-un mediu de producție este să semnați digital scripturile și să utilizați politica de execuție a scripturilor AllSigned . Când implementați această politică, toate scripturile modificate trebuie actualizate cu o nouă semnătură digitală. Acest lucru împiedică administratorii sau alți membri ai personalului să facă modificări aleatorii ale scriptului. De exemplu, dacă organizația dvs. are un set de scripturi aprobate pentru gestionarea utilizatorilor Active Directory Domain Services (AD DS), această configurație va împiedica personalul de la biroul de asistență să modifice scripturile intenționat sau accidental.

Pentru a adăuga o semnătură digitală la un script, trebuie să aveți un certificat de semnare a codului care este de încredere pentru toate computerele care vor rula scriptul. Puteți obține un certificat de semnare a codului de încredere de la o autoritate de certificare publică. De asemenea, puteți obține un certificat de semnare a codului de la o autoritate de certificare internă care este de încredere pentru computere.

Adăugați o semnătură digitală utilizând cmdletul Set-AuthenticodeSignature , așa cum se descrie în următorul cod:

$cert =  Get-ChildItem -Path "Cert:\CurrentUser\My" -CodeSigningCert
Set-AuthenticodeSignature -FilePath "C:\Scripts\MyScript.ps1" -Certificate $cert