主页 > 知识库 > Powershell在一个会话中只允许执行指定命令的方法

Powershell在一个会话中只允许执行指定命令的方法

热门标签:信阳话务外呼系统怎么收费 雷霆电话机器人电话 什么渠道可以找外呼系统客户 安徽400电话办理 使用电话机器人电销是否违法 真人和电话机器人对话 湖州电销防封卡 电话智能外呼系统诚信合作 金融电销公司怎么办理外呼系统

支持所有PS版本

Powershell处理可执行程序(如EXE)类似其它语言。然而你也可以让PS阻止执行任何程序或仅允许执行授权文件。

默认是允许执行任何程序:

复制代码 代码如下:

PS> $ExecutionContext.SessionState.Applications
*

下面将授权PS只允许执行ping.exe和regedit.exe命令。

复制代码 代码如下:

$ExecutionContext.SessionState.Applications.Clear()
$ExecutionContext.SessionState.Applications.Add('ping.exe')
$ExecutionContext.SessionState.Applications.Add('regedit.exe')

请看结果:

复制代码 代码如下:

$ExecutionContext.SessionState.Applications
ping.exe
regedit.exe

比如,我此时执行ipconfig时就应当报错:

复制代码 代码如下:

PS> ipconfig
ipconfig : 无法将“ipconfig.exe”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请
确保路径正确,然后再试一次。
所在位置 行:1 字符: 1
+ ipconfig
+ ~~~~~~~~
+ CategoryInfo : ObjectNotFound: (ipconfig.exe:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException

当然,你也可以还原到初始设置:
复制代码 代码如下:

$ExecutionContext.SessionState.Applications.Add('*')
PS> explorer
PS>

所以,它能较好的防止EXE的执行(或意外执行非法EXE),使用它作为一种安全模式,你就可以关闭。当关闭了它,你将不能执行访问.net对象,于是在当前会话你将不能在恢复这些设置。

标签:运城 六盘水 德州 岳阳 湛江 鹤岗 济南 山南

巨人网络通讯声明:本文标题《Powershell在一个会话中只允许执行指定命令的方法》,本文关键词  Powershell,在,一个,会,话中,;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 下面列出与本文章《Powershell在一个会话中只允许执行指定命令的方法》相关的同类信息!
  • 本页收集关于Powershell在一个会话中只允许执行指定命令的方法的相关信息资讯供网民参考!
  • 推荐文章