2012-01-28 91 views
0

我有一个自己托管的服务。多个客户端连接服务并使用它。我倾向于tcp,因为它提供的会话没有任何额外的代码,也希望能够提升性能。使用最低配置设置wcf netTcpBinding

客户端(WPF应用程序)都有一个用户名和密码,我存储在服务器上的数据库。现在的问题是如何设置此绑定?安全要求不是很高,我更喜欢简单的解决方案。

我对wcf和一般服务很陌生。我收集到我可以使用证书进行身份验证,但不知道它们是如何工作的。对Windows认证也不太了解。

回顾:

我在服务器上存储用户名/密码。 我需要通过尽可能少的配置才能使tcpBinding通过互联网工作 安全不是主要问题 客户端计算机不在我的域中。

如果问题太广泛,链接到资源,甚至指向我应该看的东西将不胜感激。

+1

nettcp是内部网的结合,如果你想互联网的结合,你需要从ohter绑定类型选择像basicHttpBinding的 – chandmk 2012-01-28 20:52:10

+0

感谢名单@ user6130 研究在互联网上一点点之后,我也发现,NetTcpBinding的是genrally没有在互联网上使用,但理论上可以这样做。 我想我应该看看其他默认绑定或考虑自定义绑定(二进制通过HTTP)[链接]:(http://jeffbarnes.net/blog/post/2007/02/22/WCF-Enable-Binary -Encoding-Over-Http.aspx) – 2012-01-28 21:32:52

回答

1

对于这种情况,您应该通过https使用basichttpbinding。

造成这种情况的原因是:

  • 您将通过互联网发送数据(basicHttpBinding的是简单的在这种情况下)
  • 你会在互联网上发送的用户名和密码(使用HTTPS/SSL停止这些会以明文)

下面是一个例子:http://msdn.microsoft.com/en-us/library/ms731361.aspx

为了让HTTPS工作设置SECU运输方式。

+0

感谢您的回复。我正在研究与wcf的其他默认绑定,并发现wsHttp确实支持会话很容易,它可以发送二进制消息(不完全是,但使用我收集的MTOM足够接近)。 我当然需要设置安全性,因为我在线路上发送用户名/密码。 再次为答复。 – 2012-01-29 16:36:57