Wcf配置.svc服务的设置,以获得最高性能和受限客户端

时间:2012-02-02 06:02:06

标签: wcf security iis configuration

我在Windows 2003服务器的IIS上安装了wcf .svc服务,在asp.net应用程序中安装了客户端,安装在同一域中的不同Windows 2003服务器上。只能使用AFAIK http传输才能在IIS主机上使用。

我需要指定配置设置,

  1. 最大化效果

  2. 只允许我的客户(位于我的域名)使用我的服务。 该服务不应被发现,不应被未经授权的客户使用。

  3. 更新:我已经将消息证书加密结合起来以满足第二个要求,但从性能的角度来看并不好。

    该服务由带字符串的数字操作或字符串参数列表

    组成
    [OperationContract]
    List<string> TranslateList(List<string> textList);
    

    字符串很短,列表中的数字通常也很小。客户端正在同步调用服务,并期望快速收到响应。

    请建议使用哪种配置设置?

    是否会更改其他配置的设置,例如

    配置 B :客户端和服务位于同一Windows 2003服务器上的

    配置 C :客户端和服务位于同一Windows 2008服务器上的 (我希望我可以使用命名管道传输)

    配置 D :客户端和服务位于不同Windows 2008服务器上的 。(我希望我可以使用TCP传输)

1 个答案:

答案 0 :(得分:0)

  1. 效果:您可以压缩您的请求和响应。您可以使用gZip
  2. 来实现此目的
  3. 仅限我的客户
    • 从web.config中删除mex绑定,然后将httpGetEnabled设置为false。这样,没有人可以创建您的服务代理。
    • 您可以使用Http Headers检查请求是否仅来自您的客户端。详细了解此here
  4. 选择绑定here是一篇好文章

    配置B:WSHttpBinding
    配置C:NetNamedPipeBinding
    配置D:NetTcpBinding

    您还可以检查NetTcpBinding here

    的效果

    希望这会对你有所帮助。