![Windows 计划任务无法与服务帐户配合使用](https://linux22.com/image/792042/Windows%20%E8%AE%A1%E5%88%92%E4%BB%BB%E5%8A%A1%E6%97%A0%E6%B3%95%E4%B8%8E%E6%9C%8D%E5%8A%A1%E5%B8%90%E6%88%B7%E9%85%8D%E5%90%88%E4%BD%BF%E7%94%A8.png)
我在计划任务中遇到了一个奇怪的问题。该任务计划在每天早上 02:02 使用服务帐户运行。该任务配置为无论用户是否登录都会运行,并且未勾选“不存储密码”框。该任务调用 Powershell 脚本将文件推送到 AWS S3 存储桶。每天早上,任务都会成功启动,但实际上不会推送文件。我已经测试了 Powershell,当我手动运行脚本时,它可以正常工作。
我使用 Start-Transcript 添加了一些日志,但什么也没告诉我。记录文件已创建,但仅显示脚本已运行。Windows 安全日志显示 SeTcbPrivilege 审核失败,但在我的 DBA 看来,Windows 应用程序和 Powershell 日志显示一切都已成功启动,没有任何失败。
真正让我困惑的是,当我将计划更改为在工作时间运行以测试时,任务成功了。当我更改计划时,系统会要求我输入服务帐户密码,完成后,我会完全退出实例。此后,必要的文件被推送到 S3 存储桶,PowerShell 记录节目文件已被推送。 有一个显著的区别,即在审核失败之后,读取凭据管理器凭据的审核成功我的管理员帐户。这说明任务计划程序在某些时候以我的身份运行,但事实并非如此。我不明白的是,为什么当我将计划重置为在 0202 运行时,该作业不起作用。实例似乎处于与工作时间测试期间相同的状态,当我更改计划时,系统要求我输入服务帐户密码,然后我注销,但文件没有被复制。我哪里可能出错了?