Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Windows Service can't access network share [closed]

Tags:

I have a windows service running on my local machine. It's configured to run under NT AUTHORITY\NETWORK SERVICE. The program access a network shared drive on a computer in the same subnet. That shared directory has Everyone set to Full control.

I'm getting False on File.Exists, but the file exists. I'm certain this is a permission issue. Am I forgetting anything? Note, the computer with the shared drive is not on a domain.

like image 732
Brian T Avatar asked Sep 01 '10 20:09

Brian T


3 Answers

Solution was found here: https://serverfault.com/questions/177139/windows-service-cant-access-network-share

The fact that the machine with the shared drive is not on a domain is where your main problem is. In order to get this to work you will have to configure the Windows Service to run as a specific user, and then you'll have to create an identical user on the remote system with the same password. It might work then.

The problem stems from the fact that in order to log in to a machine not in a domain, you have to log into that machine using an account that exists on that machine. The machine account for something else definitely won't exist on that local machine. By creating an identical user with an identical password, you might be able get the login to work."

-sysadmin1138

I created identical accounts on both machines and the service account was able to access the shared drive. Having the servers on the same domain is a better solution, so I'm working towards that, but this will work in the mean time.

like image 173
Brian T Avatar answered Sep 22 '22 07:09

Brian T


Brian T was correct. But I would like to add something. We had this problem even though the service was running on the same DOMAIN\User. Our service was trying to write a file to a shared folder/drive and it was configured in the config.xml like so: I:/path/to/the/file/to/write.

But when we changed the config to use IP-address of the network instead of drive letter, we managed to fix the issue. However the syntax changed a bit:

\\xxx.xxx.xx.xx\path\to\the\folder\to\write

Hope this helps anyone who still haven't solved the problem

like image 38
theManag3R Avatar answered Sep 19 '22 07:09

theManag3R


Setting the share permissions is not enough. Also set the NTFS permissions adequately, then it'll work. Everyone Full Control on the share means, everyone can get through the network to the root of the share but from then on NTFS rights are used to determine what is allowed and what not.

like image 29
jdehaan Avatar answered Sep 22 '22 07:09

jdehaan