0

我正在尝试在 Windows 2016 服务器上创建一个任务,并且需要将 gMSA 帐户部署为登录帐户,下面是我正在使用的脚本,我需要确保选项 - “无论用户是否登录都运行”获取选中了,下面的代码应该做些什么改变?

$action = New-ScheduledTaskAction -Execute "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -Argument "NoProfile -ExecutionPolicy Unrestricted C:\Admin\Scripts\test.ps1 "
$trigger = New-ScheduledTaskTrigger -daily -At 5:05am
$Pri = New-ScheduledTaskPrincipal -UserId "Domain\gMSA" -LogonType ServiceAccount -RunLevel Highest
$task = New-ScheduledTask -Action $action -Trigger $trigger 
Register-ScheduledTask -Action $action -Trigger $trigger -TaskName "Taskname" -Principal $Pric 
4

1 回答 1

3

这是与 SO 主题和答案/接受的答案类似的请求。

将计划任务设置为在用户未登录时运行 但是由于您使用的是 gMSA,因此您永远不会知道该密码是什么。

所以,你可以正常创建任务,然后说这个......

schtasks /change /TN \YourTaskName /RU DOMAIN\gMSA_Name$ /RP

或者在纯 PowerShell 中,您再次设置计划任务,然后执行此操作...

New-ScheduledTaskPrincipal -UserID Domain\GMServiceAccount$ -LogonType Password

在此处查看上述详细信息:

Active Directory - 使用 gMSA 的计划任务

于 2020-07-02T19:16:07.267 回答