Condividi tramite


Protezione avanzata della sicurezza delle attività

L'uso della funzionalità di protezione avanzata della sicurezza delle attività consentirà ai proprietari delle attività di eseguire le attività con privilegi minimi necessari. Si noti che questa funzionalità è abilitata per impostazione predefinita e i proprietari di attività possono apportare ulteriori modifiche usando il tipo di identificatore di sicurezza del token del processo attività e la matrice dei privilegi necessari per le attività.

Matrice di privilegi necessari per il token di processo attività

Specificando ProcessTokenSidType a livello di definizione dell'attività, i proprietari delle attività richiedono l'esecuzione di un processo di attività con il tipo SID "none" o il tipo SID "senza restrizioni". Se il campo è presente nella definizione dell'attività, la convalida garantisce che UserId contenga il nome o la stringa SID corrispondente per uno degli account del servizio predefiniti del sistema operativo: "SERVIZIO DI RETE" o "SERVIZIO LOCALE".

Il tipo SID "nessuno" indica che l'attività viene eseguita in un processo che non contiene un SID del token di processo (non verranno apportate modifiche all'elenco gruppi di token di processo). L'account dell'entità attività SID (LocalService/NetworkService) in questo caso ha accesso completo al token di processo.

Il tipo SID "senza restrizioni" indica che un SID attività verrà derivato dal percorso attività completo e verrà aggiunto all'elenco dei gruppi di token di processo. Ad esempio, l'oggetto \Microsoft\Windows\RACTask che viene eseguito nell'account del servizio locale, il SID dell'attività deriva dal nome Microsoft-Windows-RAC-RACTask in cui un "-" viene sostituito per un carattere "\" poiché "\" è un carattere di nome utente non valido. Il nome del gruppo noto per l'attività SID sarebbe "NT TASK\<modificato percorso attività completo>" (nome dominio\formato nomeutente). Il token di processo predefinito elenco di controllo di accesso discrezionale (DACL) verrà modificato anche per consentire il controllo completo per il SID dell'attività e il SID del sistema locale e il controllo di lettura solo nell'account dell'entità attività SID. "schtasks.exe /showid /tn <full task path>" mostrerà il SID dell'attività corrispondente all'attività.

Quando un'azione attività non COM viene avviata, il motore di pianificazione registra l'account dell'entità attività, ottiene il token di processo e esegue una query sull'elenco dei privilegi che il token ha e quindi confronta con l'elenco di privilegi specificato in RequiredPrivileges. Se un privilegio non viene specificato in quest'ultimo, viene contrassegnato come SE_PRIVILEGE_REMOVED. L'azione eseguibile verrà quindi avviata con l'handle del token risultante usando l'API CreateProcessAsUser.

Quando viene avviata un'azione attività COM, deve essere attivata dal processo di taskhost.exe. Il motore di pianificazione esegue una query sul blocco di contesto di ogni taskhost.exe in esecuzione con lo stesso account dell'attività iniziale. Se rileva che un processo host è stato avviato con un superset di privilegi necessari per l'attività iniziale, tale attività viene ospitata in tale processo. Se non trova un processo di questo tipo, combina le informazioni di protezione avanzata di tutte le attività in esecuzione nei taskhost nell'account dell'entità attività con la maschera RequiredPrivileges specificata e quindi avvia una nuova istanza di taskhost.exe.

Se RequiredPrivileges non è presente nella definizione dell'attività, i privilegi predefiniti dell'account dell'entità attività senza SeImpersonatePrivilege verranno usati per il processo di attività. Se ProcessTokenSidType non è presente nella definizione dell'attività, viene usato "senza restrizioni" come impostazione predefinita.

Informazioni di registrazione attività

Informazioni sull'utilità di pianificazione delle attività

Contesti di sicurezza per le attività