Como pode haver uma diferença entre “Fazer logon como: Conta do sistema local” e “Autoridade NT \ Sistema”?

2

Em primeiro lugar, desejo esclarecer que tenho pesquisado muitas perguntas sobre a conta "Sistema Local" e, embora eu me sinta esclarecido sobre as propriedades da conta, nenhuma delas parece explicar meu cenário.

Estou implantando um serviço em um Windows Server 2008 de um cliente. A máquina já é usada há anos para contabilização de créditos de impressoras e possui um sistema contábil existente. Meu serviço é simplesmente fazer interface com esse sistema de contabilidade.

O problema é que, se eu instalar meu serviço como faria e tiver feito em muitos outros sistemas com a conta "Efetuar logon como: sistema local" em services.msc, recebo problemas relacionados a permissões.

Primeiro, eu o executei a partir de cmd usando várias contas "Administrador", "Autoridade NT \ Serviço de Rede" e "Autoridade NT \ Sistema". Nenhum deles causa problemas. O que é especialmente estranho para o último.

Ele fica mais estranho quando eu entro em services.msc e mudo para "This account", digite "nt authority \ system" e de repente ele funciona perfeitamente. Quando eu mudo de volta para "Conta do Sistema Local", os problemas se apresentam novamente.

Deve-se notar que a máquina faz parte de um grupo de trabalho de algum tipo e vários dos serviços de contabilidade de impressão estão sendo executados como usuários de um domínio criado pelo meu cliente. Eu não sei muito mais sobre sua configuração de autenticação e realmente achei que não precisava.

Como pode haver uma diferença entre "Fazer logon como: Conta do sistema local" e "Autoridade NT \ Sistema"?

    
por Niels Søholm 08.08.2013 / 11:40

1 resposta

4

Este artigo explica bem

Eles são duas coisas diferentes. A conta do sistema local deve conter o token para NT Authority\System , de modo que não explique por que você está com problemas, mas certamente há diferenças entre as contas. Eles não são sinônimos um para o outro.

Esta advertência poderia explicar o que você está vendo:

A service that runs in the context of the LocalSystem account inherits the security context of the SCM. The user SID is created from the SECURITY_LOCAL_SYSTEM_RID value. The account is not associated with any logged-on user account. This has several implications:

•The registry key HKEY_CURRENT_USER is associated with the default user, not the current user. To access another user's profile, impersonate the user, then access HKEY_CURRENT_USER.

•The service can open the registry key HKEY_LOCAL_MACHINE\SECURITY.

• The service presents the computer's credentials to remote servers.

•If the service opens a command window and runs a batch file, the user could hit CTRL+C to terminate the batch file and gain access to a command window with LocalSystem permissions.

    
por 08.08.2013 / 15:05