[英]How to secure a WCF Service
我在IIS中托管了WCF服务。 我在asp.net mvc中托管了另一个网站。 这是一个公共网站。 我想保护WCF服务的安全性,以便无法从我的MVC应用程序或我允许访问的任何应用程序访问该服务。
我可以使用表单身份验证吗?
更新:
我已经看了几个例子,但是我没有一个有效的例子。 我不想使用ssl。 我的网络应用程序中没有登录功能。 如果需要,可以实施程序登录。 我需要的是,如果未从我的网站调用该服务,则拒绝访问。 我已经在Web服务中使用表单身份验证完成了此操作。 但是这里,httpcontext为空。
是的你可以。 WCF调用通过相同的管道进行,因此,如果您检查特定的主体(用户名或角色),则检查将失败/成功,具体取决于Forms cookie。
我的博客条目中有更多详细信息
http://netpl.blogspot.com/2010/04/aspnet-forms-authentication-sharing-for.html
在这里,我展示了如何在Web应用程序与托管的调用WCF服务的Silverlight应用程序之间共享表单身份。
如果是另一种类型的客户端应用程序,则在客户端获取Cookie值的方式可能会有所不同。 Silverlight只是从运行它的Web应用程序继承cookie。
假设您的客户端是一个控制台应用程序,您甚至可以从WCF服务中公开不受保护的方法,该方法接受登录名+密码并将cookie返回给客户端。 这样,控制台应用程序将首先调用此不受保护的方法来登录用户,然后使用返回的cookie调用由表单身份验证保护的其他WCF服务。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.