119 votes

Où puis-je trouver les données stockées par un service Windows exécuté en tant que "compte système local" ?

J'utilise un service qui stocke les données sur le disque. Le service est exécuté en tant que "compte système local".

Où se trouvent les données stockées pour cet utilisateur du système ?

Je pense à C:\Documents and Settings\Default User mais je ne suis pas sûr de ça.

Quelqu'un peut-il le confirmer ?

131voto

Jay Michaud Points 3929

Les données que vous recherchez ne doivent pas, par défaut, se trouver dans " C:\Documents et paramètres \Default Utilisateur". C'est l'emplacement du profil utilisateur par défaut, qui est le modèle pour les nouveaux profils utilisateurs. Sa seule fonction est d'être copié dans un nouveau dossier pour être utilisé comme profil utilisateur lorsqu'un utilisateur se connecte à l'ordinateur pour la première fois.

Si le service suit les directives de Microsoft, il stockera les données dans les fichiers le dossier de données de l'application (%APPDATA%) ou le dossier de données de l'application locale (%LOCALAPPDATA% sous Windows Vista et versions ultérieures). Il ne devrait pas utiliser les dossiers Mes documents ou Documents, mais vous pouvez également vérifier ces dossiers.

Sur une installation typique de Windows XP ou Windows Server 2003, vérifiez les emplacements suivants pour les données d'application des programmes exécutés en tant que Système local (NT AUTHORITY) \SYSTEM ) :

  • C:\Windows\system32\config\systemprofile\Application Données Vendeur \ Programme
  • C:\Windows\system32\config\systemprofile\Local Paramètres \Application Données Vendeur \ Programme
  • C:\Windows\system32\config\systemprofile\My Documents

Sur une installation typique de Windows Vista et des versions ultérieures, vérifiez les emplacements suivants pour les données d'application des programmes exécutés en tant que système local (NT AUTHORITY) \SYSTEM ) :

  • C:\Windows\system32\config\systemprofile\AppData\Roaming\ Vendeur \ Programme
  • C:\Windows\system32\config\systemprofile\AppData\Local\ Vendeur \ Programme
  • C:\Windows\system32\config\systemprofile\AppData\LocalLow\ Vendeur \ Programme
  • C:\Windows\system32\config\systemprofile\Documents

Bien sûr, remplacez le nom du fournisseur et le nom du programme par le nom de l'entreprise. Vendeur y Programme .

[Editer - pour bricelam] Pour les processus 32 bits fonctionnant sous Windows 64 bits, il s'agirait de SysWOW64 .

  • C:\Windows\SysWOW64\config\systemprofile\AppData

22 votes

Pour les processus 32 bits exécutés sur des versions 64 bits de Windows, vérifiez sous C:\Windows\SysWOW64 à la place.

1 votes

Voir aussi la réponse ici : stackoverflow.com/questions/3637605/

34voto

lu_ko Points 351

La destination change dans le temps. Sous Windows 10 :

  • %systemroot%\ServiceProfiles

Par exemple :

  • %systemroot%\ServiceProfiles\LocalService
  • %systemroot%\ServiceProfiles\NetworkService

6 votes

Note : ceci s'applique à LocalService y NetworkService mais pas LocalSystem sur laquelle la question porte. Ce sont trois comptes séparés, voir ici pour plus de détails

7voto

jimg Points 459

Aller à Sysinternals et téléchargez procmon. Vous devrez connaître le nom de l'exe sous lequel le service est exécuté. Vous pourrez alors utiliser le filtre de procmon pour ne lister que les activités générées par cette application.

Vous devriez maintenant être en mesure de parcourir la liste et de déterminer quel fichier cette application utilise (REMARQUE : après plusieurs minutes d'enregistrement, vous pouvez utiliser le menu fichier pour arrêter la surveillance).

L'ensemble de la suite Sysinternal peut être téléchargé sous la forme d'un seul fichier zip et vous pouvez trouver d'autres utilitaires dans le kit qui peuvent être utiles.

7voto

Ian Boyd Points 5006

A partir d'un processus réel s'exécutant en tant que SYSTEM ( S-1-5-18 ).

  • GetUserName : SYSTEM
  • Utilisateur Sid : S-1-5-18
  • GetUserNameEx(NomParfaitementQualifiéDN) : CN=HYDROGEN,CN=Computers,DC=stackoverflow,DC=com
  • GetUserNameEx(NomSamCompatible) : STACKOVERFLOW\HYDROGEN$
  • GetUserNameEx(NameDisplay) : HYDROGEN$
  • GetUserNameEx(NameUniqueId) : {b413b030-8e9a-49d2-9157-20afd58792dd}
  • GetUserNameEx(NomCanonique) : stackoverflow.com/Computers/HYDROGEN
  • GetUserNameEx(NomUserPrincipal) : USER-PC02$@stackoverflow.com
  • GetUserNameEx(NameCanonicalEx) : stackoverflow.com/ComputersHYDROGEN
  • GetUserNameEx(NomServicePrincipal) : s/o
  • GetTempPath : C:\WINDOWS\TEMP\
  • CSIDL_APPDATA : C:\WINDOWS\system32\config\systemprofile\AppData\Roaming
  • CSIDL_LOCAL_APPDATA : C:\WINDOWS\system32\config\systemprofile\AppData\Local
  • CSIDL_COMMON_APPDATA : C:\ProgramData
  • CSIDL_PROFILE : C:\WINDOWS\system32\config\systemprofile
  • CSIDL_PERSONAL : s/o

Service local

  • GetUserName : LOCAL SERVICE
  • Utilisateur Sid : S-1-5-1
  • GetUserNameEx(NomParfaitementQualifiéDN) : s/o
  • GetUserNameEx(NomSamCompatible) : NT AUTHORITY\LOCAL SERVICE
  • GetUserNameEx(NameDisplay) : s/o
  • GetUserNameEx(NameUniqueId) : s/o
  • GetUserNameEx(NomCanonique) : s/o
  • GetUserNameEx(NomUserPrincipal) : s/o
  • GetUserNameEx(NameCanonicalEx) : s/o
  • GetUserNameEx(NomServicePrincipal) : s/o
  • GetTempPath : C:\WINDOWS\SERVIC~3\LOCALS~1\AppData\Local\Temp\
  • CSIDL_APPDATA : C:\WINDOWS\ServiceProfiles\LocalService\AppData\Roaming
  • CSIDL_LOCAL_APPDATA : C:\WINDOWS\ServiceProfiles\LocalService\AppData\Local
  • CSIDL_COMMON_APPDATA : C:\ProgramData
  • CSIDL_PROFILE : C:\WINDOWS\ServiceProfiles\LocalService
  • CSIDL_PERSONAL : C:\WINDOWS\ServiceProfiles\LocalService\Documents

Service réseau

  • GetUserName : "HYDROGEN$``
  • Utilisateur Sid : S-1-5-2`
  • GetUserNameEx(NomParfaitementQualifiéDN) : CN=HYDROGEN,CN=Computers,DC=avatopia,DC=com
  • GetUserNameEx(NomSamCompatible) : AVATOPIA\HYDROGEN$
  • GetUserNameEx(NameDisplay) : HYDROGEN$
  • GetUserNameEx(NameUniqueId) : {b413b030-8e9a-49d2-9157-20afd58792dd}
  • GetUserNameEx(NomCanonique) : stackoverflow.com/Computers/HYDROGEN
  • GetUserNameEx(NomUserPrincipal) : USER-PC02$@stackoverflow.com
  • GetUserNameEx(NameCanonicalEx) : stackoverflow.com/ComputersHYDROGEN
  • GetUserNameEx(NomServicePrincipal) : s/o
  • GetTempPath : C:\WINDOWS\SERVIC~3\NETWOR~1\AppData\Local\Temp\
  • CSIDL_APPDATA : C:\WINDOWS\ServiceProfiles\NetworkService\AppData\Roaming
  • CSIDL_LOCAL_APPDATA : C:\WINDOWS\ServiceProfiles\NetworkService\AppData\Local
  • CSIDL_COMMON_APPDATA : C:\ProgramData
  • CSIDL_PROFILE : C:\WINDOWS\ServiceProfiles\NetworkService
  • CSIDL_PERSONAL : C:\WINDOWS\ServiceProfiles\NetworkService\Documents

0 votes

Je cherchais l'équivalent système de UserProfile, et c'est CSIDL_PROFILE. Je vous remercie !

0 votes

Vous avez le code que vous avez utilisé pour faire ça ?

0 votes

@JohnZabroski Non. J'ai simplement créé un programme de test qui crache les valeurs, puis je l'ai exécuté avec une tâche planifiée. Ce sont toutes des fonctions simples de l'API Windows Win32.

2voto

Matt Points 161

J'ai utilisé un service fonctionnant en tant que compte "Système local" et les données de l'utilisateur sont stockées dans ce compte :

c:\Documents and Settings\LocalService

Il s'agit d'un dossier caché et il m'a fallu du temps pour le trouver. J'espère que cela vous aidera.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X