Serviço do Windows acessando o compartilhamento UNC

1

Eu sei que uma pergunta semelhante foi feita recentemente neste site e tentei a solução recomendada, mas ainda estou tendo problemas.

Eu tenho um aplicativo que desejo executar como um serviço do Windows em uma máquina XP (sim sem suporte). Este serviço precisa ser capaz de armazenar dados em um compartilhamento de servidor (Win2003 Server), que é especificado em um arquivo de configuração como um caminho UNC.

Eu segui o conselho anterior e criei usuários locais correspondentes nos dois sistemas e dei ao usuário local no servidor o acesso necessário ao compartilhamento.

Se eu executar meu aplicativo no modo não-serviço (ou seja, efetuar login na máquina Xp como o usuário local recém-criado e executar a partir da linha de comando), todo o processo funciona e os dados são armazenados como deveriam no servidor compartilhar. No entanto, assim que executo o aplicativo como um serviço usando a nova conta local como a conta de Logon, nenhum dado é gravado no compartilhamento de servidor.

Informações sobre adição | - o servidor faz parte de um domínio do AD
- a máquina XP não faz parte desse domínio

Não consigo descobrir se meu problema está relacionado à maneira como a máquina XP está executando o serviço e se está permitindo o acesso à rede ou se o problema está realmente no lado do servidor que não está aceitando conexões de rede de um serviço.

Qualquer ajuda seria muito apreciada.

Atenciosamente

Andrew Hoole

    
por Andrew Hoole 15.04.2014 / 11:48

2 respostas

0

Zero . Seu serviço deve produzir logs locais, a partir dos quais deve ficar claro o que não está funcionando ou onde procurar o problema. Se não for o caso, e você é responsável pelo desenvolvimento, adicione esta função.

Primeiro , compartilhe o acesso marcado em dois lugares:

  1. Pasta compartilhada em si (pode ter permissões diferentes para usuários diferentes)
  2. ACL NTFS

Seu usuário, sob o qual os sucessos do teste, certamente possuem os dois acessos. E quanto ao usuário do serviço? Verifique primeiro (no servidor).

Segundo , você pode permitir temporariamente que o usuário do serviço faça logon localmente, faça logon sob ele e tente acessar o compartilhamento. Desta forma, você verá se está funcionando. Depois disso, você poderá executar o aplicativo no modo de depuração e verificar o que está errado.

Btw, onde a configuração é armazenada? Talvez a localização da configuração seja diferente para cada usuário ou inacessível para o usuário do serviço?

    
por 15.04.2014 / 12:22
0

Ao inserir as credenciais para acessar o compartilhamento, você inseriu o nome do servidor e, em seguida, uma barra invertida antes do nome de usuário para especificá-lo é uma conta local?

por exemplo. servername \ username

O servidor pode estar tentando autenticar a conta no domínio em vez de localmente.

    
por 15.04.2014 / 12:17