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

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

内容简介:我有一个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


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

查看所有标签

猜你喜欢:

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

阿里巴巴Java开发手册

阿里巴巴Java开发手册

杨冠宝 / 电子工业出版社 / 2018-1 / 35

《阿里巴巴Java开发手册》的愿景是码出高效,码出质量。它结合作者的开发经验和架构历程,提炼阿里巴巴集团技术团队的集体编程经验和软件设计智慧,浓缩成为立体的编程规范和最佳实践。众所周知,现代软件行业的高速发展对开发者的综合素质要求越来越高,因为不仅是编程相关的知识点,其他维度的知识点也会影响软件的最终交付质量,比如,数据库的表结构和索引设计缺陷可能带来软件的架构缺陷或性能风险;单元测试的失位导致集......一起来看看 《阿里巴巴Java开发手册》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

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

URL 编码/解码

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换