Como identificar o nome do perfil de usuário (original) de um nome de conta de usuário alterado no Windows?


8

No Windows, o nome de uma conta de usuário seria diferente do nome do perfil de usuário após ser alterado no Painel de Controle.

Como encontrar o nome do perfil de usuário original de um nome de conta de usuário alterado?

Respostas:


6

Existem duas propriedades de "nome" de cada conta. Deixe-me esclarecer um pouco as coisas para não ficarmos confusos. Um é o nome da conta SAM (Security Account Manager), que aparece na saída de net user. Esse é o nome da conta no que diz respeito aos componentes do sistema operacional de baixo nível. O outro é o nome de exibição, que aparece na página Contas de usuário do painel de controle e no menu Iniciar. O snap-in Usuários e Grupos Locais para o MMC ( lusrmgr.msc) mostra: o nome do SAM na coluna Nome e o nome para exibição na coluna Nome Completo. O nome do SAM é usado para produzir a pasta de perfil.

Não é muito fácil alterar o nome do SAM, a menos que você use este snap-in do MMC. Somente alterações no nome do SAM produzem o evento 4781. Suspeito que, como você não vê um evento 4781 em seu log, apenas o nome de exibição foi alterado. Isso produz apenas o evento 4738 ("uma conta de usuário foi alterada"). O evento 4738 lista apenas o novo valor para o nome de exibição, não o antigo, e eu suspeito que o histórico dos nomes de exibição não seja mantido em lugar algum (sua melhor esperança seria procurar nos logs por mais instâncias de 4738).

Felizmente, encontrar o caminho do perfil a partir de um nome para exibição não é muito difícil. Abra o PowerShell e digite este comando:

gwmi win32_useraccount

Você recebe várias entradas parecidas com esta:

AccountType : 512
Caption     : <redacted>\tester
Domain      : <redacted>
SID         : S-1-5-21-<redacted>-1018
FullName    : Test Account
Name        : tester

Encontre o que FullNamemostra o nome de exibição da conta. Em seguida, observe o SIDvalor (reduzi o SID da minha máquina aqui). Abra o registro e navegue até a chave mencionada por harrymc:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList

Abra a subchave com o mesmo nome do SID encontrado. O ProfileImagePathvalor mantém o caminho para sua pasta de perfil.


Recebo esta mensagem de erro após inserir o comando, conforme indicado por você:Get-LocalUser : The term 'Get-LocalUser' is not recognized as the name of a cmdlet....
Fenixtriver 24/06

@FeniXtriver Ups, parece que o Get-LocalUsercmdlet não existe na versão Windows 7 do PowerShell. (Testei no Windows 10.) Também editei minha resposta para funcionar no Windows 7.
Ben N

Na verdade, eu testei no Windows 10 também, mas parece não funcionar. De qualquer forma, o novo comando fornecido funciona agora. Muito obrigado pela sua contribuição valiosa. Marquei sua resposta correta. :)
Fenixtriver

8

Como encontrar o nome do perfil de usuário original de um nome de conta de usuário alterado?

Procure no EventID 4781 o log de eventos do sistema de segurança do Windows : O nome de uma conta foi alterado :

4781: O nome de uma conta foi alterado

O usuário identificado por Assunto: alterou o nome de logon normal ou o nome de logon pré-Win2k do usuário identificado pela Conta de Destino :. O evento 4738, na verdade, fornece melhores informações sobre essa alteração.

Este evento é registrado para contas SAM locais e contas de domínio.

Você também verá o ID do evento 4738 informando sobre as mesmas informações.

Sujeito:

A sessão de usuário e logon que executou a ação.

  • ID de segurança: o SID da conta.
  • Nome da conta: o nome do logon da conta.
  • Domínio da conta: o domínio ou - no caso de contas locais - nome do computador.
  • O ID de logon é um número semi-exclusivo (exclusivo entre reinicializações) que identifica a sessão de logon. O ID de logon permite correlacionar para trás com o evento de logon (4624), bem como com outros eventos registrados durante a mesma sessão de logon.

Conta de destino:

  • ID de segurança: SID da conta
  • Nome da conta: nome da conta
  • Domínio da conta: domínio da conta
  • Nome da conta antiga: nome de logon antigo
  • Novo nome de conta: novo nome de logon

Origem EventID 4781: O nome de uma conta foi alterado


Não foi possível encontrar este evento no log de eventos. Existe outra possibilidade além do nome da conta do usuário ser alterado para que o nome da conta seja diferente do nome do perfil do usuário? Ou existe outra maneira de identificar?
Fenixtriver

@FeniXtriver Você olhou no log de eventos de segurança ? Não conheço outras maneiras de alterar o nome do perfil do usuário, a menos que alguém tenha invadido o registro.
DavidPostill

11
Eu suspeito que haja alguma confusão sobre o nome da conta SAM e o nome de exibição acontecendo aqui. Acabei de testar e alterar o nome de exibição (por exemplo, com o Painel de Controle) não cria o evento 4781 porque não altera o nome do SAM.
Ben N

@DavidPostill Sim, examinei o log de eventos de segurança. Eu acredito que Ben N's está certo. E marquei a resposta dele como correta. Obrigado pela sua ajuda de qualquer maneira. Sinta-se à vontade para me informar se você ainda tiver algo a acrescentar. :)
Fenixtriver

8

Esta resposta é baseada no fato de que renomear a conta do usuário não altera automaticamente o caminho do perfil.

Se a conta foi renomeada, mas o caminho do perfil não foi alterado, o nome do caminho pode ser encontrado no registro, HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList no item nomeado ProfileImagePathcujo valor será C:\Users\old-user-name.

imagem clique para ampliar a imagem

Para converter o SID marcado no nome atual da conta do usuário, digite no comando cmd o comando:

wmic useraccount where sid='S-1-3-12-12451234567-1234567890-1234567-1434' get name

11
Para adicionar mais ... também não net userlista os nomes de usuário antigos? Ok, se há muitos nomes de usuário, ainda é difícil descobrir, mas em um PC geralmente não é.
LPChip

11
@harrymc Como você saberia qual caminho do perfil é para qual nome de conta?
Fenixtriver

11
Uma maneira seria pegar a chave, que é uma sequência longa que começa com 'S' e inserir no cmd o comando wmic useraccount where sid='S-1-3-12-12451234567-1234567890-1234567-1434' get name.
harrymc

@LPChip, você está certo.
Fenixtriver

@harrymc O problema é que não saberíamos qual é o SID em primeiro lugar. Marquei a resposta de Ben N correta no momento. Muito obrigado pela sua contribuição de qualquer maneira. Sinta-se à vontade para me informar se tiver algo a acrescentar. :)
Fenixtriver
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.