Freigeben über


LocalSystem-Konto

Das LocalSystem-Konto ist ein vordefiniertes lokales Konto, das vom Dienststeuerungs-Manager verwendet wird. Dieses Konto wird vom Sicherheitssubsystem nicht erkannt, sodass Sie seinen Namen nicht in einem Aufruf der LookupAccountName-Funktion angeben können. Er verfügt über umfangreiche Berechtigungen auf dem lokalen Computer und fungiert als Computer im Netzwerk. Das Token enthält die NT AUTHORITY\SYSTEM und BUILTIN\Administrators SIDs; diese Konten haben Zugriff auf die meisten Systemobjekte. Der Name des Kontos in allen Gebietsschemas lautet ".\LocalSystem". Der Name, localSystem oder ComputerName\LocalSystem kann auch verwendet werden. Dieses Konto verfügt nicht über ein Kennwort. Wenn Sie das LocalSystem-Konto in einem Aufruf der CreateService oder ChangeServiceConfig--Funktion angeben, werden alle von Ihnen bereitgestellten Kennwortinformationen ignoriert.

Ein Dienst, der im Kontext des LocalSystem-Kontos ausgeführt wird, erbt den Sicherheitskontext des SCM. Die Benutzer-SID wird aus dem wert SECURITY_LOCAL_SYSTEM_RID erstellt. Das Konto ist keinem angemeldeten Benutzerkonto zugeordnet. Dies hat mehrere Auswirkungen:

  • Der Registrierungsschlüssel HKEY_CURRENT_USER ist dem Standardbenutzer zugeordnet, nicht dem aktuellen Benutzer. Um auf das Profil eines anderen Benutzers zuzugreifen, stellen Sie die Identität des Benutzers fest, und greifen Sie dann auf HKEY_CURRENT_USERzu.
  • Der Dienst kann den Registrierungsschlüssel HKEY_LOCAL_MACHINE\SECURITYöffnen.
  • Der Dienst stellt die Anmeldeinformationen des Computers für Remoteserver dar.
  • Wenn der Dienst ein Befehlsfenster öffnet und eine Batchdatei ausführt, könnte der Benutzer STRG+C drücken, um die Batchdatei zu beenden und Zugriff auf ein Befehlsfenster mit LocalSystem-Berechtigungen zu erhalten.

Das LocalSystem-Konto verfügt über die folgenden Berechtigungen:

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

Die meisten Dienste benötigen keine so hohe Berechtigungsstufe. Wenn Ihr Dienst diese Berechtigungen nicht benötigt und kein interaktiver Dienst ist, sollten Sie das LocalService-Konto oder das NetworkService-Kontoverwenden. Weitere Informationen finden Sie unter Service Security and Access Rights.