命令行中的任务计划程序

时间:2014-07-22 05:43:48

标签: batch-file command-line scheduled-tasks schtasks.exe

我正在尝试从命令行执行相当于此操作(直接从任务调度程序导出)xml文件。

<?xml version="1.0" encoding="UTF-16"?>
<Task version="1.3" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
  <RegistrationInfo>
    <Date>2014-04-15T15:17:02.4785276</Date>
    <Author>~COMPUTER_NAME~\~USER_NAME~</Author>
  </RegistrationInfo>
  <Triggers>
    <EventTrigger>
      <Enabled>true</Enabled>
      <Subscription>&lt;QueryList&gt;&lt;Query Id="0" Path="Security"&gt;&lt;Select Path="Security"&gt;*[System[Provider[@Name='Microsoft-Windows-Security-Auditing'] and EventID=4625]]&lt;/Select&gt;&lt;/Query&gt;&lt;/QueryList&gt;</Subscription>
      <ValueQueries>
        <Value name="IpAddress">Event/EventData/Data[@Name='IpAddress']</Value>
      </ValueQueries>
    </EventTrigger>
  </Triggers>
  <Principals>
    <Principal id="Author">
      <UserId>~COMPUTER_NAME~\~USER_NAME~</UserId>
      <LogonType>Password</LogonType>
      <RunLevel>HighestAvailable</RunLevel>
    </Principal>
  </Principals>
  <Settings>
    <MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy>
    <DisallowStartIfOnBatteries>true</DisallowStartIfOnBatteries>
    <StopIfGoingOnBatteries>false</StopIfGoingOnBatteries>
    <AllowHardTerminate>true</AllowHardTerminate>
    <StartWhenAvailable>false</StartWhenAvailable>
    <RunOnlyIfNetworkAvailable>false</RunOnlyIfNetworkAvailable>
    <IdleSettings>
      <StopOnIdleEnd>true</StopOnIdleEnd>
      <RestartOnIdle>false</RestartOnIdle>
    </IdleSettings>
    <AllowStartOnDemand>true</AllowStartOnDemand>
    <Enabled>true</Enabled>
    <Hidden>false</Hidden>
    <RunOnlyIfIdle>false</RunOnlyIfIdle>
    <DisallowStartOnRemoteAppSession>false</DisallowStartOnRemoteAppSession>
    <UseUnifiedSchedulingEngine>false</UseUnifiedSchedulingEngine>
    <WakeToRun>false</WakeToRun>
    <ExecutionTimeLimit>PT1H</ExecutionTimeLimit>
    <Priority>7</Priority>
  </Settings>
  <Actions Context="Author">
    <Exec>
      <Command>~Location_Of_Batch_Script~</Command>
      <Arguments>$(IpAddress)</Arguments>
    </Exec>
  </Actions>
</Task>

这甚至可能吗?

目标是在特定事件(4625 - RD连接尝试失败)时以管理员身份运行批处理脚本,该事件将管理传入的暴力攻击。安装程序脚本需要此命令才能将其添加到任务计划程序。

它需要以管理员身份运行,但有没有办法在不让人们输入用户名和密码的情况下这样做(或者甚至不需要)?

此外,在大多数Windows版本中是否支持此.xml文件或命令行变体?它适用于Windows Server OS。

1 个答案:

答案 0 :(得分:0)

如果您输入schtasks /create /?,它会告诉您该怎么做。在某个阶段你需要一个密码。如果使用服务或系统帐户,则在创建时(如果不是提升的管理员)输入密码。

本地服务帐户 LocalService帐户是服务控制管理器使用的预定义本地帐户。安全子系统无法识别此帐户,因此您无法在调用LookupAccountName函数时指定其名称。它在本地计算机上具有最低权限,并在网络上显示匿名凭据。所有语言环境中的帐户名称均为NT AUTHORITY \ LOCALSERVICE。此帐户没有密码。

NetworkService帐户 NetworkService帐户是服务控制管理器使用的预定义本地帐户。安全子系统无法识别此帐户,因此您无法在调用LookupAccountName函数时指定其名称。它在本地计算机上具有最低权限,并充当网络上的计算机。所有语言环境中的帐户名称均为NT AUTHORITY \ NETWORK SERVICE。此帐户没有密码

LocalSystem帐户 LocalSystem帐户是服务控制管理器使用的预定义本地帐户。安全子系统无法识别此帐户,因此您无法在调用LookupAccountName函数时指定其名称。它在本地计算机上具有广泛的权限,并充当网络上的计算机。它的令牌包括NT AUTHORITY \ SYSTEM和BUILTIN \ Administrators SID;这些帐户可以访问大多数系统对象。所有语言环境中的帐户名称为。\ LocalSystem。也可以使用名称LocalSystem或ComputerName \ LocalSystem。此帐户没有密码。