当前位置 : 主页 > 网页制作 > HTTP/TCP >

是否通过HTTP或HTTPS调用WCF服务的方法?

来源:互联网 收集:自由互联 发布时间:2021-06-16
假设您有一个可通过HTTP和HTTPS访问的WCF服务,但您只希望某些方法可用于HTTPS – 我如何检查当前请求是否为HTTPS?由于HttpContext是空的,你不能简单地检查HttpContext.Current.Request.IsSecureConne
假设您有一个可通过HTTP和HTTPS访问的WCF服务,但您只希望某些方法可用于HTTPS – 我如何检查当前请求是否为HTTPS?由于HttpContext是空的,你不能简单地检查HttpContext.Current.Request.IsSecureConnection – 任何其他想法?提前致谢. 考虑到WCF应用程序也可以作为 Windows服务托管,根本没有ASP.NET,在这种情况下,没有“安全”与“不安全”之类的东西.这就是为什么WCF不会尝试提供此信息的原因之一.

一种选择是在ASP.NET Compatibility Mode中运行WCF服务,您可以在其中访问HttpContext.Current实例.

但是,我的选择只是为安全操作创建一个不同的仅SSL服务.我真的认为你无论如何都想要这样做,所以合同是明确的;否则你将继续进行运行时检查,客户可能不知道他们试图使用的方法是不允许的.

Web服务中的“最佳实践”是使这些类型的限制尽可能明确,并且仅通过SSL提供单独的服务是描述服务限制的最明确方法.

网友评论