最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

ASP.NET中基于soaphead的webservice安全機制

 更新時間:2016年05月30日 11:25:14   投稿:yourber  
常會用到WebService來通訊,但WebService發(fā)布后為了能調(diào)用,一般都通過發(fā)布到IIS后調(diào)用 的。在IIS里可以通過匿名訪問,但這樣大家都可能訪問,不安全,下面提供一種基于soaphead的安全機制。

使用soaphead方法可以在webservice的請求中增加頭部信息,當有人調(diào)用我們的webservice時,可以通過查詢這個請求的頭部信息并驗證來防止該軟件以外的程序調(diào)用webservice

一、服務端部分

using System;
using System.Web.Services;
using System.Web.Services.Protocols;

//請注意此命名空間必須有別于代理動態(tài)連接庫上的命名空間。 
//否則,將產(chǎn)生諸如多處定義AuthHeader這樣的錯誤。 
namespace SoapHeadersCS
{

  //由SoapHeader擴展而來的AuthHeader類 
  public class AuthHeaderCS : SoapHeader
  {
    public string Username;
    public string Password;
  }

  //[WebService(Description="用于演示SOAP頭文件用法的簡單示例")] 
  public class HeaderService
  {

    public AuthHeaderCS sHeader;

    [WebMethod(Description = "此方法要求有調(diào)用方自定義設置的soap頭文件")]
    [SoapHeader("sHeader")]
    public string SecureMethod()
    {

      if (sHeader == null)
        return "ERROR:你不是VIP用戶!";

      string usr = sHeader.Username;
      string pwd = sHeader.Password;

      if (AuthenticateUser(usr, pwd))
      {
        return "成功:" + usr + "," + pwd;
      }
      else
      {
        return "錯誤:未能通過身份驗證";
      }
    }

    private bool AuthenticateUser(string usr, string pwd)
    {

      if ((usr != null) && (pwd != null))
      {
        return true;
      }
      return false;
    }
  }
}

二、客戶端部分加上驗證的請求

WebService webservice = new WebService();
AuthHeaderCS auth = new AuthHeaderCS();
auth.Username = "vip";
auth.Password = "vippw";
webservice.AuthHeaderCSValue = auth;
textBox1.Text = webservice.SecureMethod();

以上就是基于soaphead的webservice安全機制全部內(nèi)容,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

最新評論

达拉特旗| 乐亭县| 甘肃省| 昆明市| 资兴市| 谷城县| 义马市| 张家港市| 绥棱县| 信宜市| 海盐县| 张家界市| 海原县| 周宁县| 太仓市| 石首市| 伊通| 天镇县| 浮山县| 长海县| 利津县| 武夷山市| 乐安县| 乐业县| 灵石县| 临沧市| 桂林市| 达州市| 淅川县| 福海县| 株洲市| 青冈县| 专栏| 南雄市| 来凤县| 凤阳县| 墨竹工卡县| 桐乡市| 蕉岭县| 秀山| 全南县|