新聞中心
在WCF開發(fā)工具的實際應(yīng)用中,有很多比較高深的內(nèi)容是值得我們?nèi)ド钊胙芯康?。作為一個初學(xué)者,可以通過不斷的實踐去積累這方面的經(jīng)驗,來達(dá)到這一個熟練的程度。在這里就先來了解一下有關(guān)WCF用戶驗證的相關(guān)概念。#t#

為定州等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計制作服務(wù),及定州網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計、定州網(wǎng)站設(shè)計,以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!
對登錄用戶的驗證是大部分應(yīng)用所必需的,對于ASP.NET來說,WCF用戶驗證及帳號管理實現(xiàn)在成員資格(Membership)模塊中。同ASP.NET的其他模塊一樣,微軟在設(shè)計Membership的時候,為了實現(xiàn)更好地可擴(kuò)展性,采用了策略(Strategy)設(shè)計模式:將模塊相關(guān)的功能定義在被稱為Provider的抽象類型中,并通過繼承它提供具體的Provider。如果這些原生的Provider不能滿足你的需求,你也可以通過繼承該抽象的Provider,創(chuàng)建自定義的Provider。通過ASP.NET提供的配置,你可以很輕易地把自定義的Provider應(yīng)用到你的應(yīng)用之中。在一般情況下,最終的編程人員并不通過Provider調(diào)用相關(guān)的功能,而是通過一個外觀(Facade)類實現(xiàn)對相關(guān)功能的調(diào)用。
ASP.NET成員資格模塊的設(shè)計基本上可以通過下面的類圖1反映出來:最終的編程人員通過外觀類型(Fa?ade Class)Membership調(diào)用成員資格相關(guān)的功能,比如用戶認(rèn)證、用戶注冊、修改密碼等;Membership通過抽象類MembershipProvider提供所有的功能,至于最終的實現(xiàn),則定義在一個個具體的MembershipProvider中?;诔蓡T資格信息不同的存儲方式,ASP.NET提供了兩個原生的MembershipProvider:SqlMembershipProvider和ActiveDirectoryMembershipProvider,前者基于SQL Server數(shù)據(jù)庫,后者基于AD。如果這兩個MembershipProvider均不能滿足需求,我們還可以自定義MembershipProvider。.
圖1 ASP.NET Membership 設(shè)計原理
我們的WCF用戶驗證的實現(xiàn)案例并不會部署于AD之中,所以不能使用ActiveDirectoryMembershipProvider;直接通過Web服務(wù)器進(jìn)行數(shù)據(jù)庫的存取又不符合上述物理部署的要求(通過應(yīng)用服務(wù)器進(jìn)行數(shù)據(jù)庫訪問),所以SqlMembershipProvider也不能為我們所用。為此需要自定義MembershipProvider,通過WCF服務(wù)調(diào)用的形式提供成員資格所有功能的實現(xiàn)。我們將該自定義MembershipProvider稱為RemoteMembershipProvider。RemoteMembershipProvider實現(xiàn)的原理:RemoteMembershipProvider通過調(diào)用WCF服務(wù)MembershipService提供對成員資格所有功能的實現(xiàn);MembershipService則通過調(diào)用Membership實現(xiàn)服務(wù);最終的實現(xiàn)還是落在了SqlMembershipProvider這個原生的MembershipProvider上。
本文名稱:WCF用戶驗證基本實現(xiàn)原理
當(dāng)前網(wǎng)址:http://fisionsoft.com.cn/article/dhseooi.html


咨詢
建站咨詢
