Software

PowerShell 停用未經簽屬指令碼執行

最近開始研究 PowerShell
但發現下載有些『第三方』或是自己寫的會出現"停用未經簽屬指令碼執行"
上網查了一下,發現原來又是微軟的 Policy 政策搞的鬼,微軟總是有一種獨特的安全性機制所以必須修改 Policy 政策

後來利用 Set-ExecutionPolicy 修改執行原則的設定,原則設定一共有六種預設值是 Restricted。
以下是官網查到的

Restricted:不載入組態檔或執行指令碼。預設值為 "Restricted"。

AllSigned:所有的指令碼和組態檔都需經過受信任的發行者簽署,包括本機電腦上撰寫的指令碼在內。

RemoteSigned:從網際網路下載的指令碼和組態檔都需經過受信任的發行者簽署。

Unrestricted:載入所有的組態檔且執行所有的指令碼。如果執行的指令碼是從網際網路下載而未經簽署,執行前將提示您權限有問題。

Bypass:不會封鎖任何項目,而且沒有警告或提示。

Undefined:從目前的範圍中移除目前所指派的執行原則。這個參數不會移除在群組原則範圍中設定的執行原則。

修改後可以利用 Get-ExecutionPolicy 來確認有沒有修改成功