Web Service安全问题,不暴露接口的一种办法

我们在做服务层时,经常会用到Web Service,但是这有个问题,容易被人恶意调用接口。

一种解决办法是自己写个验证SoapHeader,屏蔽接口在网页端调用,但使用这个方法别人还是能看到你的接口有哪些,也不安全,所以今天就写出我的办法屏蔽WSDL接口。

我用的是C#,其他语言的也可以参考我这个办法,如果大家有更好的办法,可以互相学习一下:

我们知道在网页端网页打开是使用GET方式,一般我们在使用Web Service是使用POST方式的,所以我们可以这样做

在Web Service项目中添加Global文件,在Global文件中捕获事件BeginRequest,如下

protected void Application_BeginRequest(object sender, EventArgs e)
{
  HttpRequest obj = Request;
  if (obj.HttpMethod != "POST")
    Response.End();
}

我们来看下,实现前后的对比

posted @ 2015-06-24 14:41  刘备编草鞋  阅读(4814)  评论(0编辑  收藏  举报