以编程方式启用Powershell是否可以接受?

时间:2013-08-30 15:12:58

标签: windows powershell usb

我最近发现默认情况下,PowerShell脚本的执行被禁用。我将依赖它来安全地从Windows中移除USB设备,但是如果默认情况下没有启用它,我必须先启用它。做这些事情通常是否可以接受?

也欢迎其他解决方案。

这个问题如下:https://superuser.com/questions/637854/safely-remove-a-usb-drive-using-bat-file/637878

2 个答案:

答案 0 :(得分:3)

我不会因为你的应用想要使用它而在机器上全局执行脚本。这是一项IT /安全政策决策,他们不应该仅仅通过使用您的软件来接受您的决定。如果从.NET应用程序中调用PowerShell运行空间,则不必担心执行策略,因为您可以在不调用单独的.ps1脚本的情况下运行命令。如果您需要调用powershell.exe并为其提供脚本文件,请查看-ExecutionPolicy BypassAbout_Executionpolicies说到绕道:

        - Nothing is blocked and there are no warnings or
          prompts.
        - This execution policy is designed for configurations
          in which a Windows PowerShell script is built in to a
          a larger application or for configurations in which
          Windows PowerShell is the foundation for a program
          that has its own security model.

答案 1 :(得分:2)

MS用于提供“准备开发”的系统。他们对此更加聪明,并且更加重视安全性。因此,他们现在默认禁用许多功能。

对于PowerShell,默认情况下默认的“执行策略”不允许运行脚本。但是,在命令行上,您可以一起绕过执行策略(即不更改它),只要您有权这样做:

PowerShell -ExecutionPolicy Bypass -file yourfile.ps1

如果您是该机器的管理员,则可以启用它并使用它。如果您只是应用程序所有者,您应该咨询管理员以更改策略,但如上所述,您可能不需要。