Ao pesquisar um problema com uma chamada de API limitada a determinadas sessões, encontrei algumas informações que sugeriam quando você usa runas para criar um processo como outro usuário, um novo token de segurança é emitido e executado em outra sessão (como o novo usuário), mas interage na área de trabalho em execução.
Para testar isso, usei o runas para executar o Notepad como um usuário local enquanto estava logado como usuário de domínio. Quando eu executei o Process Explorer da Sysinternals e adicionei a coluna Session, ele disse que os processos do usuário do meu domínio e o novo processo do Notepad eram ambos da sessão 1.
Quando eu executei o utilitário Logonsessions da Sysinternals, ele diz que meu usuário local está executando na Sessão 0, enquanto meu usuário de domínio é a Sessão 1.
Query Session
... retorna apenas o usuário do meu domínio no console SESSIONNAME & gt ;.
Qual é a diferença quando estou tentando verificar informações da sessão entre esses utilitários? Parece que falta algo fundamental para entender como o Windows rastreia e usa sessões e associa processos e nomes de usuários a eles.
Tags windows session sysinternals