如何使用本地系统用户使用Windows服务访问共享资源?

时间:2012-03-28 10:07:15

标签: c# windows-services networkcredentials

我需要使用本地系统用户使用Windows服务访问共享资源。我尝试使用类UserImpersonation,但它只适用于调试。当我安装我的服务时,我无法访问共享文件夹。

我已阅读过有关此主题的内容,我想知道唯一的方法是创建具有网络凭据的用户并使用此用户执行服务。

2 个答案:

答案 0 :(得分:2)

您可以在已为其配置网络访问权限的帐户(不一定是截屏中的NetworkService)下运行服务。为此,请转到您的服务经理,然后右键单击属性:

enter image description here

访问网络共享时,您必须考虑两种类型的权限,您必须确保您使用的帐户具有以下权限:Share and NTFS permissions

答案 1 :(得分:1)

您问题的最后一段包含答案。该服务在特定用户的上下文中运行。您需要确保此用户可以访问相关资源。由于这个原因,为特定服务创建专用用户并不罕见。