Att signera en PowerShell (PS1)-skriptfil ökar förtroendet och säkerheten genom att validera utgivarens identitet och säkerställa att skriptet inte har manipulerats. Så här signerar du ett PowerShell-skript:
Förutsättningar :
- Du måste ha ett kodsigneringscertifikat. Om du inte har ett kan du skaffa ett självsignerat certifikat eller köpa ett från en betrodd certifikatutfärdare (CA).
- Se till att PowerShell-skriptet är syntaktisk korrekt och felfritt.
Steg för att signera ett PowerShell-skript :
1. Skapa ett certifikat :
- Öppna Windows PowerShell ISE (Integrated Scripting Environment) eller en vanlig PowerShell-konsol.
- Skriv följande kommando för att generera ett självsignerat kodsigneringscertifikat:
``` Powershell
New-SelfSignedCertificate -DnsName [YourDomain] -CertStoreLocation Cert:\CurrentUser\My
```
Ersätt [YourDomain] med ditt domännamn.
2. Exportera certifikatet :
- Skriv följande kommando för att exportera det nyskapade självsignerade certifikatet som en .pfx-fil:
``` Powershell
Export-PfxCertificate -Cert [ThumbprintOfTheCertificate] -FilePath [OutputFilePath].pfx -Lösenord [Lösenord]
```
Ersätt [ThumbprintOfTheCertificate] med tumavtrycket för ditt nyskapade certifikat.
Ersätt [OutputFilePath] med önskad plats för den exporterade .pfx-filen.
Ersätt [Lösenord] med ett starkt lösenord för .pfx-filen.
3. Underteckna skriptet :
- Skriv följande kommando för att signera ditt skript. Ersätt [ScriptPath] med den fullständiga sökvägen till din PowerShell-skriptfil (.ps1):
``` Powershell
Set-AuthenticodeSignature -FilePath [ScriptPath] -Certificate ([Get-ChildItem -Path Cert:\CurrentUser\My | Där { $_.Subject -match 'CN=[YourDomain]' }) | Välj -Index 0) -Lösenord [Lösenord]
```
Ersätt [ScriptPath] med den fullständiga sökvägen till din PowerShell-skriptfil (.ps1).
Ersätt [Lösenord] med lösenordet du använde när du exporterade .pfx-filen.
4. Verifiera signaturen :
- Skriv följande kommando för att verifiera skriptsignaturen:
``` Powershell
Get-AuthenticodeSignature -FilePath [ScriptPath]
```
Detta bekräftar att skriptet är signerat och validerat.
Ytterligare anmärkningar :
- När du kör det signerade skriptet kommer användaren att få en uppmaning som ber dem att lita på utgivaren. Genom att installera kodsigneringscertifikatet i sin betrodda rotbutik eller genom att tillåta det som ett undantag, kan användare acceptera skriptet som pålitligt.
- Om du använder ett självsignerat certifikat visas en säkerhetsvarning. För att öka förtroendet kan du få ditt certifikat signerat av en betrodd CA som VeriSign eller DigiCert.
- Det signerade skriptet kan säkert delas och användas av andra. När ett signerat skript körs kommer det att visa utgivarens information, vilket garanterar att det inte har modifierats eller äventyrats.