小编Sal*_*rMN的帖子

如何强制 PowerShell 不允许交互式命令窗口

我是一名Citrix管理员,希望限制我们服务器上的一般用户使用 PowerShell 运行他们自己的脚本,或以交互方式使用它。我们已经禁止通过GPO使用命令提示符,但是在 PowerShell 可用的情况下,这基本上没用。

我发现 Powershell.exe 有一个命令行选项,-NoInteractive允许用户运行脚本,但它没有为他们提供交互式命令提示符。问题是我还没有找到强制powershell以这种方式运行的方法。我什至创建了一个 C:\Windows\System32\WindowsPowerShell\v1.0\Microsoft.PowerShell_profile.ps1 启动脚本来检查-NoInteractive参数,但用户可以通过简单地启动带有-NoProfile参数的Powershell.exe 来绕过它.

另一个问题是我们确实使用了很多 PowerShell 脚本来为用户启动应用程序,并且登录脚本的一部分是用 PowerShell 编写的,需要在用户上下文中运行,所以我不能简单地对 EXE 文件进行 ACL。我需要他们能够使用 PowerShell,只是不能以交互方式使用。最终,我们希望强制AllSigned执行执行策略并签署所有脚本,以便用户可以运行的唯一内容是我们(管理员)创建和/或签署的脚本。

我试过在谷歌上搜索这个答案,发现很多人都在使用-NoInteractive,但我还没有找到有人试图强迫它的实例。有任何想法吗?

powershell

7
推荐指数
1
解决办法
2万
查看次数

标签 统计

powershell ×1