2011-09-06 162 views
1

经过大量的谷歌搜索,我问你的帮助,似乎很容易,但是......真的不是。basicHttpBinding与自定义登录名/密码和HTTPS

如何使用basichttpbinding而不是WSHttpBinding来像本教程中那样使用自定义登录名/密码? http://codebetter.com/petervanooijen/2010/03/22/a-simple-wcf-service-with-username-password-authentication-the-things-they-don-t-tell-you/

我需要这个,因为我的webservice客户端可能在PHP中,我发现WSHttpBinding不能与PHP Soap实现一起使用。

感谢提前!

回答

1

好吧,所以最后我完成了没有HTTPS,但它的工作原理!

我用下面的链接,以产生一个干净的web服务:

http://channel9.msdn.com/Shows/Endpoint/Endpoint-Screencasts-Creating-Your-First-WCF-Service http://laedit.developpez.com/PHP/CSharp/Interoperabilite/#LIV(法语,显示WCF PAR)

然后,我终于做出了一个工作的app.config文件:http://pastebin.com/cVGC88Gj。这是第二个链接中所做示例的修改版本。

这是自定义的认证码:http://pastebin.com/QucGKqZt

记住这个代码从来没有在生产中。密码在头部清楚地发送。但为了开发它的干净和简单;-)

1

尽管此MSDN example中的实际代码使用wsHttpBinding,但自定义用户/密码验证程序代码也适用于basicHttpBinding使用。查看this blog post中的代码以查看使用自定义验证程序的basicHttpBinding特定配置。请记住,默认情况下,WCF将仅支持客户端和服务之间的安全通信。这意味着博客文章中显示的基本HTTP绑定配置必须超过HTTPS