c# - WCF Windows服务权限问题

标签 c# .net wcf web-services

我已经创建了一个 WCF 服务并使用 Windows 服务主机托管它。 为了安装项目,我创建了一个安装项目(如 here 所述)。 在教程中,它说在 ProjectInstaller.cs 中将 serviceProcessInstaller1 Account 属性定义为 Network Service。 使用此设置时,服务未在服务器上启动。当我尝试手动启动该进程时,它立即返回到已停止 状态。
在我将帐户 更改为LocalSystem 之后,服务正常运行。 我的问题是:

  1. 知道为什么它不能与网络服务帐户一起使用吗?
  2. 使用具有 LocalSystem 帐户的服务器有哪些安全隐患?此服务器在本地 Intranet 中用作其他服务器的报告服务器。

最佳答案

  1. 网络服务没有使用命名管道运行 WCF 主机的适当权限(参见 http://weblogs.thinktecture.com/cweyer/2007/12/dealing-with-os-privilege-issues-in-wcf-named-pipes-scenarios.html)。
  2. 参见 http://www.windowsitpro.com/article/services/understanding-the-local-service-and-network-service-accounts.aspx有关这些帐户之间差异的说明。 LocalSystem 是一个本地管理帐户,如果被攻击者利用,可能会造成很多麻烦。网络服务帐户的访问权限要少得多,因此更好用。

关于c# - WCF Windows服务权限问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2646015/

相关文章:

wcf - .Net Core 不支持 WSHttpBinding

c# - .net - 如何分析方法中有多少不同的代码路径

c# - javascript 中相同的 c# 代码是什么?

.net - 为 Django/Pylons 程序员学习 C# 和 ASP.NET MVC

.net - 为按钮使用 StyleSelector

c# - 面向对象与基于参数的 WCF 调用?

c# - 可能有意重新抛出 Resharper 异常

c# - 无法从 HttpContextBase 转换为 HttpContextBase

.net - 使用 WiX 检测 .NET Framework 4.5.1

wcf - WCF 可靠 session 的问题(可靠消息传递)