LocalSystem Account
L'account LocalSystem è un account locale predefinito usato dal gestore di controllo del servizio. Questo account non viene riconosciuto dal sottosistema di sicurezza, pertanto non è possibile specificarne il nome in una chiamata alla funzione LookupAccountName . Dispone di privilegi estesi sul computer locale e funge da computer in rete. Il token include i SID NT AUTHORITY\SYSTEM e BUILTIN\Administrators; questi account hanno accesso alla maggior parte degli oggetti di sistema. Il nome dell'account in tutte le impostazioni locali è .\LocalSystem. È anche possibile usare il nome LocalSystem o ComputerName\LocalSystem. Questo account non ha una password. Se si specifica l'account LocalSystem in una chiamata alla funzione CreateService o ChangeServiceConfig , tutte le informazioni sulla password specificate vengono ignorate.
Un servizio eseguito nel contesto dell'account LocalSystem eredita il contesto di sicurezza di SCM. Il SID utente viene creato dal valore SECURITY_LOCAL_SYSTEM_RID . L'account non è associato ad alcun account utente connesso. Questo ha diverse implicazioni:
- La chiave del Registro di sistema HKEY_CURRENT_USER è associata all'utente predefinito, non all'utente corrente. Per accedere al profilo di un altro utente, rappresentare l'utente, quindi accedere HKEY_CURRENT_USER.
- Il servizio può aprire la chiave del Registro di sistema HKEY_LOCAL_MACHINE\SECURITY.
- Il servizio presenta le credenziali del computer ai server remoti.
- Se il servizio apre una finestra di comando ed esegue un file batch, l'utente potrebbe premere CTRL+C per terminare il file batch e ottenere l'accesso a una finestra di comando con autorizzazioni LocalSystem.
L'account LocalSystem dispone dei privilegi seguenti:
- SE_ASSIGNPRIMARYTOKEN_NAME (disabilitato)
- SE_AUDIT_NAME (abilitata)
- SE_BACKUP_NAME (disabilitato)
- SE_CHANGE_NOTIFY_NAME (abilitata)
- SE_CREATE_GLOBAL_NAME (abilitato)
- SE_CREATE_PAGEFILE_NAME (abilitata)
- SE_CREATE_PERMANENT_NAME (abilitata)
- SE_CREATE_TOKEN_NAME (disabilitato)
- SE_DEBUG_NAME (abilitato)
- SE_IMPERSONATE_NAME (abilitata)
- SE_INC_BASE_PRIORITY_NAME (abilitato)
- SE_INCREASE_QUOTA_NAME (disabilitato)
- SE_LOAD_DRIVER_NAME (disabilitato)
- SE_LOCK_MEMORY_NAME (abilitata)
- SE_MANAGE_VOLUME_NAME (disabilitato)
- SE_PROF_SINGLE_PROCESS_NAME (abilitata)
- SE_RESTORE_NAME (disabilitato)
- SE_SECURITY_NAME (disabilitato)
- SE_SHUTDOWN_NAME (disabilitato)
- SE_SYSTEM_ENVIRONMENT_NAME (disabilitato)
- SE_SYSTEMTIME_NAME (disabilitato)
- SE_TAKE_OWNERSHIP_NAME (disabilitato)
- SE_TCB_NAME (abilitata)
- SE_UNDOCK_NAME (disabilitato)
La maggior parte dei servizi non necessita di un livello di privilegio così elevato. Se il servizio non necessita di questi privilegi e non è un servizio interattivo, è consigliabile usare l'account LocalService o l'account NetworkService. Per altre informazioni, vedere Sicurezza del servizio e diritti di accesso.