国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

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

2024-07-10 13:30:37
字體:
來源:轉載
供稿:網友
常會用到WebService來通訊,但WebService發布后為了能調用,一般都通過發布到IIS后調用 的。在IIS里可以通過匿名訪問,但這樣大家都可能訪問,不安全,下面提供一種基于soaphead的安全機制。
 

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

一、服務端部分

using System;using System.Web.Services;using System.Web.Services.Protocols;//請注意此命名空間必須有別于代理動態連接庫上的命名空間。 //否則,將產生諸如多處定義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 = "此方法要求有調用方自定義設置的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安全機制全部內容,希望能給大家一個參考,也希望大家多多支持VeVb武林網。



注:相關教程知識閱讀請移步到ASP.NET教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 自治县| 南开区| 海伦市| 清河县| 万山特区| 景谷| 普兰县| 尤溪县| 永靖县| 诏安县| 五莲县| 清流县| 四子王旗| 开封市| 江津市| 天等县| 江门市| 凤山县| 通州市| 定西市| 昭平县| 克山县| 大化| 平顶山市| 安丘市| 东阿县| 万盛区| 曲靖市| 泾川县| 荥经县| 思茅市| 元朗区| 潞西市| 枣庄市| 容城县| 宜良县| 福海县| 旌德县| 两当县| 威宁| 顺昌县|