LocalSystem 계정

LocalSystem 계정은 서비스 제어 관리자가 사용하는 미리 정의된 로컬 계정입니다. 이 계정은 보안 하위 시스템에 의해 인식되지 않으므로 LookupAccountName 함수 호출에서 해당 이름을 지정할 수 없습니다. 로컬 컴퓨터에 대한 광범위한 권한이 있으며 네트워크의 컴퓨터 역할을 합니다. 해당 토큰에는 NT AUTHORITY\SYSTEM 및 BUILTIN\Administrators SID가 포함됩니다. 이러한 계정은 대부분의 시스템 개체에 액세스할 수 있습니다. 모든 로캘의 계정 이름은 .\LocalSystem입니다. Name, LocalSystem 또는 ComputerName\LocalSystem도 사용할 수 있습니다. 이 계정에는 암호가 없습니다. CreateService 또는 ChangeServiceConfig 함수 호출에서 LocalSystem 계정을 지정하는 경우 사용자가 제공하는 암호 정보는 무시됩니다.

LocalSystem 계정의 컨텍스트에서 실행되는 서비스는 SCM의 보안 컨텍스트를 상속합니다. 사용자 SID는 SECURITY_LOCAL_SYSTEM_RID 값에서 만들어집니다. 계정은 로그온한 사용자 계정과 연결되지 않습니다. 여기에는 다음과 같은 의미가 있습니다.

  • HKEY_CURRENT_USER 레지스트리 키는 현재 사용자가 아닌 기본 사용자와 연결됩니다. 다른 사용자의 프로필에 액세스하려면 사용자를 가장한 다음 HKEY_CURRENT_USER 액세스합니다.
  • 서비스는HKEY_LOCAL_MACHINE\SECURITY 레지스트리 키를 열 수 있습니다.
  • 서비스는 원격 서버에 컴퓨터의 자격 증명을 제공합니다.
  • 서비스에서 명령 창을 열고 일괄 처리 파일을 실행하는 경우 사용자는 Ctrl+C를 눌러 배치 파일을 종료하고 LocalSystem 권한이 있는 명령 창에 액세스할 수 있습니다.

LocalSystem 계정에는 다음과 같은 권한이 있습니다.

  • SE_ASSIGNPRIMARYTOKEN_NAME (사용 안 함)
  • SE_AUDIT_NAME (사용)
  • SE_BACKUP_NAME (사용 안 함)
  • SE_CHANGE_NOTIFY_NAME (사용)
  • SE_CREATE_GLOBAL_NAME (사용)
  • SE_CREATE_PAGEFILE_NAME (사용)
  • SE_CREATE_PERMANENT_NAME (사용)
  • SE_CREATE_TOKEN_NAME (사용 안 함)
  • SE_DEBUG_NAME (사용)
  • SE_IMPERSONATE_NAME (사용)
  • SE_INC_BASE_PRIORITY_NAME (사용)
  • SE_INCREASE_QUOTA_NAME (사용 안 함)
  • SE_LOAD_DRIVER_NAME (사용 안 함)
  • SE_LOCK_MEMORY_NAME (사용)
  • SE_MANAGE_VOLUME_NAME (사용 안 함)
  • SE_PROF_SINGLE_PROCESS_NAME (사용)
  • SE_RESTORE_NAME (사용 안 함)
  • SE_SECURITY_NAME (사용 안 함)
  • SE_SHUTDOWN_NAME (사용 안 함)
  • SE_SYSTEM_ENVIRONMENT_NAME (사용 안 함)
  • SE_SYSTEMTIME_NAME (사용 안 함)
  • SE_TAKE_OWNERSHIP_NAME (사용 안 함)
  • SE_TCB_NAME (사용)
  • SE_UNDOCK_NAME (사용 안 함)

대부분의 서비스에는 이러한 높은 권한 수준이 필요하지 않습니다. 서비스에 이러한 권한이 필요하지 않고 대화형 서비스가 아닌 경우 LocalService 계정 또는 NetworkService 계정을 사용하는 것이 좋습니다. 자세한 내용은 서비스 보안 및 액세스 권한을 참조하세요.