From LedHed's Wiki
Quick -N- Dirty
- Make sure your CA has the "Code Signing" template installed
Create a Code Signing Cert
- Run MMC.exe and the "Certificates" snap-in and choose "My user account"
- Right click "Personal", click "All Tasks", click "Request New Certificate..."
- Next, Next, select "Code Signing" and click "Enroll", "Finished"
PowerShell
1. Open PowerShell (run as Administrator)
2. Run:
Set-ExecutionPolicy RemoteSigned
3. Answer yes to the prompt
4. Close PowerShell
5. Open PowerShell (Not as Administrator)
6. Run:
Set-AuthenticodeSignature <Full-Path-To-Your-Script> @(Get-ChildItem cert:\CurrentUser\My -codesigning)[0]
Note: Only change <Full-Path-To-Your-Script>, leave cert:\CurrentUser\My alone!
Your script should now be signed.