在生产服务器上启用PowerShell的安全问题

我在ISV的软件开发方面工作。 我们正在考虑在核心应用程序(本身就是ASP.NET)中和周围使用PowerShell

我的一位同事对我说,大多数认真的客户会认为PowerShell在生产环境中是一个完整的禁忌,并且会拒绝这一点。 他是对的吗?

PowerShell在Windows Server的最后几个版本中默认包含和启用。

如果“严重客户”正在使用Microsoft技术,那么即使他们隐藏在其他pipe理GUI之后,他们也几乎可以肯定地使用PowerShell,即使他们没有故意使用PowerShell。

2015年的微软服务器软件由PowerShellpipe理。

  • 活动目录
  • 交换
  • SQL Server
  • Hyper-V的
  • 天青云
  • SCOM
  • IIS
  • 的SharePoint
  • 基本上,任何和所有的Windows Serverangular色和function,例如DFS-R ,甚至angular色和function本身。

并扩展到第三方,包括VMware,NetApp,Equallogic

有可能删除PowerShell,我有兴趣听到有人这样做,或者Windows Server 2012 R2的限制被删除。

想想备选scheme,可以使用批处理命令,vb脚本或您自己编译的二进制文件来pipe理您的产品。 为什么潜在客户会比PowerShell更信任这些技术?

尽pipePowerShell最终被认为是非常powerful ,但您可以使用任何这些技术来做所有事情。 最后,他们都调用Windows API。

所以,PowerShell的安全性不低于其他select。 在运行之前要求所有的脚本都被签名是非常容易的(尽pipe如此,你也可以使用vb-scripts来完成)。

另外作为pipe理员,我宁愿使用C#二进制文件的PowerShell脚本,因为我可以快速检查并查看脚本正在做什么。

像Just Enough Administration工具包一样,可以限制某些pipe理员可以执行某些操作的时间,甚至进一步locking系统。

所以,不允许PowerShell在专业的Windows商店中是很奇怪的。

尝试pipe理没有PowerShell的Windows Nano服务器。

为什么不和你的一些潜在客户谈谈,并向他们询问这个问题。 我有兴趣听到反对使用PowerShell的任何争论。

听起来像你的同事需要做一些阅读。 PowerShell是Windows 2012中所有内容的核心.PowerShell的目标之一就是不再需要MS上的团队来创build自己的向导和GUI …只需为所有内容创buildPowerShell cmdlet,然后将GUI放在它。 并不是所有的东西都存在,但是AD促销向导就是一个很好的例子。 通过点击,你留下了一个PowerShell命令,你可以使用在第一个地方。

PowerShell一路….通过HTTPS连接执行它,并且与Linuxpipe理员可能使用的任何基于SSH的连接一样安全,甚至可能更为安全。