从.Net 2.0 Client调用WCF服务时如何配置安全性

栏目: ASP.NET · 发布时间: 6年前

内容简介:我有一个WCF服务运行,并能够使用basicHttpBinding在服务和.Net 2.0客户端之间进行通信.我现在需要锁定WCF服务,以便只能由经过身份验证的客户端调用.我可以控制将呼叫我的服务的客户端.客户是将在野外安装的产品的一部分,并且“打电话回家”来推送和拉取数据.客户端应用程序是为.Net 2.0框架编写的,目前无法升级到3.0或3.5版本.我无法向客户机添加Windows用户帐户.

我有一个WCF服务运行,并能够使用basicHttpBinding在服务和.Net 2.0客户端之间进行通信.

我现在需要锁定WCF服务,以便只能由经过身份验证的客户端调用.

我可以控制将呼叫我的服务的客户端.客户是将在野外安装的产品的一部分,并且“打电话回家”来推送和拉取数据.客户端应用程序是为.Net 2.0框架编写的,目前无法升级到3.0或3.5版本.我无法向客户机添加Windows用户帐户.

保护WCF服务并能够从我的.Net 2.0客户端进行身份验证是什么?此外,数据需要通过https传递.

我一直在搜索网页,觉得我正在野鹅追逐.

您可以将WCF端点配置为使用双向SSL身份验证.这意味着您可以要求客户提供X.509证书,以便在向服务发出请求时确认其身份.

在服务器端,您可以使用WCF中的一种内置验证方案,或提供自己的验证逻辑来​​检查X.509证书.

如果您在IIS中托管您的服务,则配置SSL以在传输级别要求客户端证书是微不足道的.但是,您可以在这里找到一个关于如何在自托管WCF服务中实现此行为的良好指南:

http://leastprivilege.com/2007/08/25/certificate-based-authentication-and-wcf-message-security/

我自己没有尝试过,但是由于这在消息级别创建了安全性要求,我认为您必须使用wsHttpBinding才能在您的WSDL合同中执行此操作,因为对访问Web服务施加安全要求是其中的一部分WS- *标准.

如果你必须使用basicHttpBinding,你可以尝试这个解决方案,而不是在传输级别上移动:

http://leastprivilege.com/2007/08/26/certificate-based-authentication-and-wcf-mode-independent/

希望这可以帮助

http://stackoverflow.com/questions/232500/how-to-configure-security-when-calling-wcf-service-from-net-2-0-client


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Python Web开发:测试驱动方法

Python Web开发:测试驱动方法

Harry J.W. Percival / 安道 / 人民邮电出版社 / 2015-10 / 99

本书从最基础的知识开始,讲解Web开发的整个流程,展示如何使用Python做测试驱动开发。本书由三个部分组成。第一部分介绍了测试驱动开发和Django的基础知识。第二部分讨论了Web开发要素,探讨了Web开发过程中不可避免的问题,及如何通过测试解决这些问题。第三部分探讨了一些高级话题,如模拟技术、集成第三方插件、Ajax、测试固件、持续集成等。本书适合Web开发人员阅读。一起来看看 《Python Web开发:测试驱动方法》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

URL 编码/解码
URL 编码/解码

URL 编码/解码

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试