WebService 利用SOAP標頭來進行帳號密碼驗證
利用WebService來撰寫三層式架構的中間層是一個不錯的方法,但是 由於WebSerivce夠開放(資料庫存取直接暴露在網際網路上),這是微軟給予有心人士天大的恩賜,難免有一些安全性不足的缺點,在此可以利用 SOAP標頭來進行一些基本的安全防護,至少可以避免一些不會必要的攻擊。
在WebService端撰寫以下語法
使用方法
在WebService端撰寫以下語法
[WebMethod] [SoapHeader("soapSet")] public bool ValidUser() { if (soapSet.UID != "ID") return false; if (soapSet.Pwd != "PassWord") return false; return true; } [WebMethod] [SoapHeader("soapSet")] public DataSet GetSqlString() { DataSet myDs = default(DataSet) if (ValidUser() == false) return myDs;//未通過驗證想要執行的資料庫操作 }
使用方法
WeBService.SqlWebService myWebService = new WeBService.SqlWebService(); WeBService.Authentication soapSet = new WeBService.Authentication(); soapSet.UID = "ID"; soapSet.Pwd = "PWD"; myWebService.Url = ConfigurationManager.AppSettings["WinServiceUrl"].ToString(); myWebService.Discover(); myWebService.AuthenticationValue = soapSet;
留言
張貼留言
您好,我是 Lawrence,這裡是我的開發筆記的網誌,如果你對我的文章有任何疑問或者有錯誤的話,歡迎留言讓我知道。