默认情况下Windows server 2008R2的脚本执行权限是RemoteSigned,本地创建的脚本都是可以运行的,从网络下载的必须要有数字签名才能够执行。实际使用过程中,用户可能会遇到脚本执行不了的现象。这里对脚本的执行权限稍作探讨,大家可以测试一下,欢迎留言讨论。
获取当前会话的脚本执行权限策略:
PS D:\powershell_study> Get-ExecutionPolicy RemoteSigned
powershell有四种脚本运行权限策略,可以通过命令man Set-ExecutionPolicy来查看。
PS D:\powershell_study> man Set-ExecutionPolicy NAME Set-ExecutionPolicy SYNOPSIS Changes the user preference for the Windows PowerShell execution policy. SYNTAX Set-ExecutionPolicy [-ExecutionPolicy] {Unrestricted | RemoteSigned | AllSigned | Restricted | Default | Bypass | Undefined} [[-Scope] {Process | CurrentUser | LocalMachine | UserPolicy | MachinePolicy}] [-Confirm] [-Force] [-WhatIf] [<CommonParameters>] ..................
Unrestricated是不受限制的意思,AllSigned是所有的脚本都需要数字签名验证,Restricted是不让任何脚本执行的意思。
设置脚本运行权限的方式:
PS C:\>Set-ExecutionPolicy -ExecutionPolicy RemoteSigned
转载于:https://blog.51cto.com/sampsondotqiu/1957395