Compartilhar via


Sessões de logon do cliente

Um servidor com o privilégio SE_TCB_NAME, como um serviço Windows em execução na Conta LocalSystem, pode chamar a função LogonUser para autenticar um cliente no computador em que o servidor está sendo executado. A função LogonUser inicia uma nova sessão de logon e retorna um token de acesso primário que contém as informações de segurança do cliente. Você pode usar esse token primário ao chamar a função ImpersonateLoggedOnUser para representar o cliente ou chamar a função CreateProcessAsUser para criar um processo executado no contexto de segurança do cliente.

A vantagem de autenticar o cliente dessa forma é que o servidor que representa o cliente autenticado ou um processo criado no contexto do cliente autenticado pode se conectar a recursos de rede remota como o cliente. Se essa autenticação não for concluída, o servidor só poderá se conectar aos recursos de rede se tiver adquirido o nome e a senha da conta do cliente para passar para a função WNetAddConnection2 .

A desvantagem de autenticar o cliente dessa forma é que o servidor deve ter adquirido as credenciais do cliente (nome de domínio, nome de usuário e senha). Se um cliente remoto fornecer essas credenciais ao servidor, será responsabilidade do cliente e do servidor garantir que as credenciais sejam transmitidas de maneira segura.