您好我正在学习创建一个我搜索过很多的Windows服务并且没有清楚地了解ServiceProcessInstaller类中的Account
属性可以请任何人解释一下有什么区别
1.用户
2.LocasService等..
答案 0 :(得分:2)
MSDN上的ServiceAccount Enumeration页面有一个描述每个帐户的表格。
最佳做法是使用具有适合您服务功能的最低权限的帐户。通常这意味着使用LocalService帐户,除非您正在执行需要LocalSystem权限的操作。
LocalSystem基本上可以通过机器自由统治,而LocalService / NetworkService具有与标准用户帐户大致相同的权限。正如您所期望的那样,在特定用户的上下文中运行服务将为该服务提供该用户的权限。
答案 1 :(得分:2)
我认为最好的是:
<强>本地服务强>
在本地计算机上充当非特权用户的帐户,并向任何远程服务器提供匿名凭据。
<强>本地系统强> 服务控制管理器使用的帐户,在本地计算机上具有广泛的权限,并充当网络上的计算机。
<强>网络服务强>
一个帐户,提供广泛的本地权限,并将计算机的凭据提供给任何远程服务器。
用户强>
由网络上的特定用户定义的帐户。指定ServiceProcessInstaller.Account成员的User会导致系统在安装服务时提示输入有效的用户名和密码,除非您为ServiceProcessInstaller实例的Username和Password属性设置值。
来自:https://msdn.microsoft.com/en-us/library/system.serviceprocess.serviceaccount(v=vs.110).aspx