出于安全原因,我应该在WCF中使用NetNamedPipe绑定吗?

时间:2010-07-07 16:27:18

标签: wcf security soa netnamedpipebinding

WCF文档说“Net Named Pipe”绑定可用于在单个机器上进行快速进程间通信。它不能用于跨机器的通信。

我想知道使用Net Named Pipe绑定是否可以保护我的服务免受来自网络外部的攻击。我被告知答案是否定的;虽然Net Named Pipe绑定意味着用于同一台机器上的进程间通信,但它可以被黑客入侵以允许从其他机器进行访问。那是准确的吗?

WCF专家,请插入。使用Net Named Pipe绑定本质上是否保护我的服务免受其他机器的未经授权的访问?

2 个答案:

答案 0 :(得分:4)

正确答案是肯定的:NetNamedPipeBinding本质上保护服务免受来自网络上其他计算机的任何访问。 WCF服务端堆栈创建的管道携带ACL,该ACL拒绝对具有NETWORK USERS组成员身份的任何登录令牌的所有访问。此组成员身份存在于任何网络登录令牌中。

NetNamedPipeBinding存在一些安全问题,特别是在.NET 3.5中,但远程攻击的漏洞并不是其中之一。

有关详细信息,请参阅this post及后续帖子。

答案 1 :(得分:0)

根据名称Net Named Pipe,此绑定使用本地命名管道作为传输机制。在Windows机器上,命名管道被视为文件......因此可以远程访问,例如浏览到具有\\ machinename的机器。因此,由于远程计算机可以访问传输机制,绑定本质上不会受到未经授权的访问的影响,尽管命名管道可能有一些安全优势,而不是TCP或HTTP。