Não. O Windows não oferece o tipo de capacidade de representação do usuário que você está perguntando aqui. Não há sudo
equivalente ou até mesmo aproximação no Windows.
Não consigo encontrar o documento ou artigo no momento, mas não permitir que a funcionalidade de representação do usuário em estilo sudo
no Windows fosse uma decisão de design deliberada nos primórdios do kernel do NT e, como resultado, Estamos muito grudados nisso. (Não há nem mesmo soluções ou truques inteligentes para contorná-lo, como normalmente existem - este está muito profundamente enraizado para se locomover).
No mundo do Windows, para realizar [praticamente] qualquer ação como usuário (seja na execução de um programa, na autenticação do AD ou em qualquer outra coisa), é necessário um token de acesso , que é usado para identificar e autenticar o acesso / privilégios do usuário. Esse token de acesso é somente criado quando o nome da conta e a senha do usuário são fornecidos (no login, para RunAs
e assim por diante).
A advertência potencialmente importante (para seus objetivos) é que uma token de acesso pode ser duplicado em um token de representação , que pode ser passado para o Função ImpersonateLoggedOnUser , que pode ser usada para representam o contexto de segurança de um usuário conectado .
Vendo como você é um desses desenvolvedores / programadores que podem saber como trabalhar com os magias arcanos do .NET, isso pode ser útil para você ao escrever um pequeno aplicativo para conseguir o que deseja fazer.
No entanto, para ser bem claro, não há nenhum comando que você possa executar ou processar para representar um usuário do Windows, a não ser codificar um (ou localizar um outro codificado) e, mesmo assim, ele está limitado a usuários cujos tokens de acesso estão disponíveis (usuários logados).