运行批处理/ Powershell脚本时,无需输入管理员凭据

问题描述 投票:0回答:1

我需要为我的客户端开发一个脚本,该脚本将禁用/启用他的笔记本电脑上的WWAN卡。

  • 客户端应该能够在不提供客户端管理员凭据或帐户的情况下启用/禁用WWAN卡
  • 应该是用户友好的。就像双击桌面上的启用或禁用快捷方式来打开/关闭一样。
  • 避免使用任何可能危及安全性的方法,例如禁用所有应用程序对升高的凭据提示的需求。 (只想绕过此脚本)

我有禁用/启用WiFi适配器的命令。但是,它要求Powershell以管理员身份运行,否则访问将被拒绝。

Disable-NetAdapter -Name "Wi-Fi" -Confirm:$false

我尝试了以下操作,但未成功。 (拒绝访问或弹出UAC并提示输入管理凭据):

  • 创建一个通过ExecutionPolicy -Bypass运行PS脚本的.Bat文件
powershell.exe -executionpolicy bypass -windowstyle hidden -noninteractive -nologo -file "c:\Users\%username%\Desktop\DisableWifi.ps1"
  • 启用“以管理员身份运行”来创建PS脚本的快捷方式
  • 使用.Bat文件的运行方式管理员创建快捷方式,以启用/禁用网络适配器。
netsh interface set interface Wi-Fi disable
  • PS脚本内的ExecutionPolicy绕过
Start-Process powershell.exe -ArgumentList "/noexit", "-executionpolicy bypass","-file C:\Users\$env:UserName\Desktop\DisableWiFi.ps1"

无论如何,我的客户端是否可以通过桌面上的脚本来打开/关闭WWAN卡,而无需他们输入管理员凭据?

谢谢!

powershell batch-file uac administrator elevated-privileges
1个回答
0
投票

可以完成。

  • 用户必须以管理员身份运行。

想象我们回到Windows XP时代。如果用户以标准用户身份运行,则他们根本无法执行管理员功能。您可以随心所欲地哭泣和抱怨-但是标准用户不能仅仅因为他们想要而获得管理员特权。

这没有改变:您必须是管理员才能进行管理。

如果用户是标准用户:您根本无法绕过它。

  • 所以如何做到这一点,以使用户不需要管理员即可输入管理员凭据?
  • 让他们成为管理员!

这很容易做:

  • 不要让他们成为standard用户
  • 将它们设为管理员

但是我们都知道您在抱怨UAC

我们都知道您正在谈论必须在UAC对话框中单击OK。和使用者一样讨厌:告诉他们灌肠并做一些深的膝盖弯曲。

或者:您必须关闭UAC-因此它们始终以管理员身份运行。

因此,任何恶意软件都可以在运行时立即完全接管其计算机。

© www.soinside.com 2019 - 2024. All rights reserved.