this へのフォローアップの質問があります。
次の2つのタスクを含むタスクフォルダRPA
があります。
タスクスケジューラUIを使用してこれら2つのタスクを自分で作成しました(上の画像のように)。私の問題は、SchTasks.exeを使用してSPSBatch
を表示できないことです。
私はユーザーBEETHOVEN\kingkであり、\Windows\System32\Tasks\RPA
フォルダー内の両方のタスクに対する同じフルアクセス権を持っています。
Tasksフォルダー内のファイルに対するファイルのアクセス許可の他に、タスクへのアクセスを制御しているものは何ですか?
セキュリティ記述子は、サービスに対して行われるのと同様に、レジストリに格納されます。
キー:HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\Tree\RPA
値:SD
おそらく、各タスクの値でもあります。
@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を作成して置換し、タスクにアクセスできるようにする必要があります。私はそれをテストしていません