發表文章

目前顯示的是有「安全性程式設計」標籤的文章

ASP.NET WebService(三)_WebService安全機制導入_SoapHeader

圖片
接續之前兩篇Web Service的介紹與筆記   ASP.NET WebService(一)_Web Service專案_分散式應用介紹雜記 ASP.NET WebService(二)_三種存取方式介紹_webmethod屬性大致介紹 透過前面第二篇會知道所謂WebService就是寫一個沒有網頁畫面給人家Call的公用Method 也學習到怎麼寫個門戶大開的WebService 門戶大開!!!沒錯仍有不足地方 基於資安考量我們還需要特別有權限控管 不能讓知道Web Service URL的人都可以隨意就進行存取~~~ 就跟郵差寄來的郵件一樣 你不希望有人去拆或動自己的郵件一樣 通常會有一層信封的包覆 這個概念就有點類似SOAP本身資料傳送時候的訊息格式 以下是SOAP本身的訊息格式示意圖 這裡介紹透過利用SoapHeader方式來設計具有權限防範的WS程式 通常可能會在Header夾帶一些驗證識別資訊作為一道授權控管手法 Step1.新增一個Class 命名為 MemberSoapHeader (可能是某個組織或論壇網站的會員、員工、成員....) 使用命名空間using System.Web.Services.Protocols; 並使其繼承SoapHeader using System ; using System . Collections . Generic ; using System . Linq ; using System . Web ; using System . Web . Services . Protocols ; namespace WSApp { public class MemberSoapHeader : SoapHeader { private string _userName ; private string _pwd ; public string UserName { get { return _userName ; } set { _userName = value ; } } ...