Existe uma maneira (quando conectado como administrador ou como membro do grupo de administradores) de se disfarçar como um usuário não privilegiado? Especialmente em um ambiente AD.
por exemplo, no mundo Unix, eu poderia fazer o seguinte (como root):
# whoami
root
# su johnsmith
johnsmith> whoami
johnsmith
johnsmith> exit
# exit
Preciso testar / configurar algo na conta de um usuário e não quero saber a senha ou redefini-la.
Edit:
runas
não vai cortá-lo. Idealmente , toda a minha área de trabalho se tornaria o usuário etc., e não apenas em uma janela de cmd.
Respostas:
Tenho certeza de que não há maneira suportada de executar como um usuário diferente sem ter as credenciais desse usuário. É uma medida de não repúdio. Alguém não pode dizer: "Eu não fiz", porque eles fizeram ou alguém com suas credenciais. E, pelo segundo, teriam que dar as credenciais à outra pessoa.
Normalmente, como faço o que preciso fazer enquanto estiver conectado como outro usuário é usar a assistência remota para essencialmente o RDP na sessão e permitir que eles me concedam controle. Então eu faço o que quer que eles estejam assistindo (presumivelmente, pelo menos).
Normalmente, qualquer outra coisa pode ser feita com GPO / scripts.
fonte
Eu notei muitas outras pessoas mencionando variações no comando runas e como você precisa saber a senha dos usuários, o que é verdade, mas não acho que alguém tenha respondido a pergunta silenciosamente. de "querer que toda a área de trabalho se tornasse usuário, etc., e não apenas em uma janela de cmd". Aqui está o que eu faço:
Nota : Vou me referir a este primeiro prompt de comando como CP1 para eliminar as confusões mais tarde.
Na sua conta de administrador, abra o prompt de comando
Para conta local
Para conta de domínio
OU da maneira que eu prefiro
Nota: Um novo prompt de comando será aberto (CP2); este é o usuário no qual você está tentando efetuar login.
Abra o CP1 e digite:
Abra o CP2 e digite:
Dependendo do computador, ele pode criar um perfil para o usuário se ele nunca tiver feito login antes. Você pode salvar o hassel mais tarde, mantendo as janelas do prompt de comando abertas para uso posterior.
Quando terminar o seu trabalho, faça o mesmo ao contrário.
No tipo CP2:
Abra o CP1 e digite:
Agora você deve voltar à conta de administrador original. Você pode fazer uma verificação rápida tocando na tecla Windows e procurando o painel do usuário atual.
Espero que isso tenha ajudado.
fonte
Não há mecanismo interno no Windows para fazer isso. Isso pode ser feito, mas você precisará escrever algo para fazer o que quiser e provavelmente precisará mexer com APIs não documentadas.
Um dos pôsteres aqui, grawity, tem o direito de chamar CreateProcessAsUser (), mas você precisará criar um token com a API nativa não documentada zwCreateToken primeiro. Se você matou o Explorer e disparou uma nova instância do Explorer com CreateProcessAsUser (), tenho certeza de que você deseja o que deseja.
A Microsoft não facilita o que você quer fazer, porque não é do jeito que eles querem que você use o NT. Se você precisar fazer logon como usuário para solucionar seus problemas, na maioria dos casos, você estará fazendo isso de maneira não otimizada.
Você pode fazer alterações no registro do usuário sem fazer logon como ele (anexando a seção de registro e manipulando-a dessa maneira). Você pode fazer alterações nos arquivos em seu perfil de usuário sem estar conectado como usuário. Se você precisar "configurar o email" ou outras atividades "como o usuário", escreva scripts ou aproveite a funcionalidade interna (Modelos Administrativos de Diretiva de Grupo, preferências etc.) para fazer seu trabalho sujo.
Se você precisar fazer isso, dê uma olhada no RunAsEx no Code Project. Esse código deve fornecer uma boa idéia do que você precisa fazer. Eu não tentei o programa, mas parece que tudo está acontecendo da maneira certa.
fonte
Você pode usar o seguinte comando no Windows XP e posterior:
As opções da linha de comando estão disponíveis aqui .
Isso não funcionará sem saber a senha do usuário. Não acredito que exista uma maneira no Windows de operar com uma conta de usuário sem a senha devido à forma como os Identificadores de Segurança são carregados.
fonte
(Apenas um palpite.) Se sua conta tiver
SeCreateTokenPrivilege
, você poderá escrever um pequeno programa para criar um processo usandoCreateProcessAsUser()
uma função semelhante ... (Mas nem mesmo os administradores têm o privilégio por padrão.)fonte
Embora eu não tenha experiência pessoal com algumas das soluções sudo mencionadas neste site, recomendo o nonadmin iniciado pelo excelente Aaron Margosis . É uma grande ajuda à medida que você lança usuários limitados. Eu pulei principalmente com alguma coisa, já que todo mundo está dizendo que usa Runas. No entanto, acho que a maioria ou todos os chamados sudo for windows lidam mais com elevação, em vez de agir como outro usuário sem sua senha.
fonte
O Process Explorer procexp.exe em http://live.sysinternals.com tem uma execução como usuário limitado (no menu arquivo), que permite executar um programa usando suas credenciais atuais, mas com sua ACL reduzida à de uma normal usuário (não administrador). Não exatamente o que você queria, mas bom para testar.
fonte