我有一个在域中注册的工作电脑。我的登录用户没有任何管理员权限,但是当我出现提示时,我有一个用于获取管理员权限的.\xxxxx帐户。
我经常更改LAN卡上的IPv4设置,有时更改为静态地址,有时更改为DHCP。但是每次我想更改IP设置时,我都需要输入我的管理员帐户。
-
使用 Batch 或 Powershell 脚本执行此操作是否可行?如果它能以安全的方式记住我的用户名和密码?
-
我可以每天只使用一次管理员密码吗?
是的,您可以使用 PowerShell 执行此操作,但是,在充当标准用户时,安全地存储管理登录名可能有些困难。有一些本机方法可以在其中Windows存储管理凭据,例如,将操作设置为可以在需要时启动的计划任务。
另一种方法是从远程管理服务器远程执行该功能,因为这不需要您在本地存储管理凭据。
另一种方法(不推荐(是您可以将用户名/pass存储在文件中,或者直接将其包含在脚本中并在需要时运行它。
您可以在安全字符串中保存和使用您的密码,但我真的不建议将其用于除基本受限用户访问凭据(如果那样的话(之外的任何东西。
存储密码
Read-Host "Enter Password" -AsSecureString | ConvertFrom-SecureString | Out-File "d:TestPassword.txt"
然后,您可以使用PSCredential对象将信条传递到PowerShell命令中
。$User = "MyUserName"
$File = "d:TestPassword.txt"
$MyCredential=New-Object -TypeName System.Management.Automation.PSCredential `
-ArgumentList $User, (Get-Content $File | ConvertTo-SecureString)
这不会阻止任何知道他们在做什么的人解密您的密码或重复使用您的加密密码,如果他们能够破坏您的登录。将密码转换为 SecureString 并将其存储在文件中的全部意义在于使其在脚本中远离纯文本,这样它就不那么容易被发现。这不是万无一失的,但它非常好。
应得的信用。虽然我在自己的PC上完成了此操作,但我很懒惰,并从此处获取了命令 https://www.pdq.com/blog/secure-password-with-powershell-encrypting-credentials-part-1/其中包含有关该主题的更多信息。