2009-11-20 69 views
3

我有一个ASMX Web服务,它通过SSL连接很好地工作,但我希望使这些Web服务在没有SSL的情况下不可访问。如何将asmx Web服务限制为SSL Only

在网页表单,我只想用下面的代码:

if (!Request.IsSecureConnection) Response.Redirect ("SomeOtherPage.aspx"); 

我知道,WCF承诺是在各方面都好,但它是一个真正的PITA得到的东西简单的用工具来完成的复杂作为WCF。

回答

0

简单。在IIS中创建一个只有SSL的网站并将其放入此网页中。 不允许非SSL连接到这个网站

1

在IIS(我不记得确切的版本,所以它可能已经移动)在网站或虚拟目录的安全选项卡下,您可以将其设置为'要求安全通道“。这会迫使它需要https,除非我错了。

2

我在我的网站上有一些对公众开放的东西,所以我选择不采取IIS路线。我确实在asmx服务中找到了一个简单的方法来解决这个问题:

if (!this.Context.Request.IsSecureConnection) 
    return null;