具有用户凭证的 Powershell 新服务

具有用户凭证的 Powershell 新服务

我正在尝试使用以下命令向我的 Windows 计算机添加服务

New-Service -Name TestWorkerService -BinaryPath "C:\Test\TestingService\Service.exe" -Credential "" -Description "Testing Service" -DisplayName "Testing Service" -StartupType Automatic

(是的,我知道我已经-Credential设置为“”)

我不确定应该使用什么值,-Credential 我尝试过只username将我输入到 Powershell 中$env:computername$env:UserName并且我已经使用了-Credential从上述两个命令中获得的值,并在它们之间添加了一个“”,但我一直收到错误

Can not be created due to the following error: The account name is invalid or does not exist, or the password is invalid for the account name spsecified

New-Service期望的正确格式是什么-Credential

编辑
我尝试手动设置,但出现以下错误。这些是我使用的命令(每行后按 Enter 键)

$username = "username"
$password = "password"
$securepassword = ConvertTo-SecureString $password -AsPlainText -Force
$cred = New-Object System.Management.Automation.PSCrednetial ($username, $securepassword)

在此处输入图片描述

在此处输入图片描述

答案1

它需要一个类型的对象私人秘书凭证. 可以使用命令手动创建Get-Credential

还有其他方法,但有点棘手,因为密码需要作为安全字符串

您可以找到如何以编程方式构建 PSCredential 对象这里


示例代码:

$username = "username"
$password = "password"
$securepassword = ConvertTo-SecureString $password -AsPlainText -Force
$cred = New-Object System.Management.Automation.PSCredential ($username, $securepassword)

New-Service [...] -Credential $cred

相关内容