保护具有表单身份验证的Web服务

时间:2010-07-02 14:46:52

标签: c# asp.net web-services membership-provider

我有一个在表单身份验证后面的Web服务。托管该服务的站点也可用作要求用户通过登录页面登录的站点。

我有第二个网站需要能够访问第一个网站托管的服务。但是,在尝试访问服务时,它会失败,因为该服务要求用户已登录。

第一个站点位于单独的服务器而不是第二个站点,但两个站点位于同一子网上。到目前为止,我发现第二个站点访问第一个站点服务的唯一方法是允许所有用户通过web.config设置特定于托管服务.ASMX文件的目录。这是不可接受的,因为它让任何知道.ASMX文件目录的人都敞开了大门。

我试图混合和匹配Windows身份验证并使用模拟来访问Web服务,但根据microsoft,您无法混合和匹配身份验证类型,并且通过个人试用,您确实无法。

我正在寻找任何有用的提示,帮助我在两个网站的最小重新配置中实现这一目标。

谢谢, 乔治

1 个答案:

答案 0 :(得分:1)

我通过向SOAP数据包的标头添加自定义安全性来实现该解决方案。这使我能够以最小的重新配置混合和匹配我的安全性。