我有一个后续问题这。
我有一个任务文件夹RPA
,其中包含两个任务,如下所示:
我使用任务计划程序 UI 自己创建了这两个任务(如上图所示)。我的问题是我现在无法SPSBatch
使用 SchTasks.exe 来查看:
我是用户 BEETHOVEN\kingk,对文件夹中的两个任务具有相同的完全访问权限\Windows\System32\Tasks\RPA
:
除了对“任务”文件夹中的文件的文件权限之外,还有什么可以控制对任务的访问?
答案1
安全描述符存储在注册表中,类似于服务的存储方式。
项:HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\Tree\RPA
值:SD
每个任务可能也有一个值。
答案2
@OldGeezer @GregAskew 感谢您链接到 SD,我能够使用以下 Powershell 将二进制 SD 转换为可读属性:
$PathToTask = "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\Tree\Microsoft"
$SDBin = ( (get-itemProperty $PathToTask).sd )
ConvertFrom-SddlString ([wmiclass]"Win32_SecurityDescriptorHelper").BinarySDToSDDL($SDBin).SDDL
通过以上内容,您应该能够读取当前的 ACL,如果您使用 Win32_SecurityDescriptorHelper 中的方法,您应该能够创建自己的 ACL 并替换它,从而使您能够访问该任务。不过我还没有测试过