]> us-delaporte.pagekite.me Git - dotfiles.git/blobdiff - psmodules/sign.psm1
Add todo.txt contents to dashboard
[dotfiles.git] / psmodules / sign.psm1
index a5667dee30c0ed4f9fcc09506f20d097acca2c2b..17820f547704e52fd4efbbc5e75ba38fd372fc00 100644 (file)
@@ -3,6 +3,31 @@
 
 Commands to maintain a local code singing cert.
 
+This is a hack to solve allowing PowerShell to trust a PowerShell profile hosted on a UNC path, without allowing 'Unrestricted' execution policy.
+
+I created this because it annoys me that my mandatory UNC path profile counts as a remote script, and I'm too pedantic to un-restrict all remote scripts just to allow my profile to load.
+
+.NOTES
+
+Works fine under PowerShell Core 6 with ExecutionPolicy RemoteSigned. PowerShell 7
+
+.EXAMPLE
+
+Set-ExecutionPolicy RemoteSigned
+
+Import-Module c:\src\dotfiles\psmodules\sign.psm1
+
+# Make a cert
+
+> New-CodeSignCert 
+# Install it - you will be promted whether to trust it.
+
+> Install-CodeSignCert 
+
+# Sign your UNC path PowerShell profile
+> Invoke-CodeSign $profile
+
+
 #>
 $certName = "Local Code Sign Cert"
 $codeSigning = ""
@@ -32,7 +57,7 @@ function Invoke-CodeSign {
        Set-AuthenticodeSignature -FilePath $Path -Certificate $cert
 }
 
-Invoke-CodeSignProfile {
+function Invoke-CodeSignProfile {
        Invoke-CodeSign -Path $profile
 }