亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Web的校園網(wǎng)統(tǒng)一身份認證系統(tǒng)的實現(xiàn)

        2012-04-29 00:00:00孫守強
        中國新通信 2012年19期

        【摘要】本文提出了一個基于.NET Passport認證機制的統(tǒng)一身份認證系統(tǒng),本系統(tǒng)利用Windows 2003系統(tǒng)自帶的Active Directory組件建立目錄服務(wù)數(shù)據(jù)庫和SQLServer數(shù)據(jù)庫,實現(xiàn)用戶信息、組織架構(gòu)和角色的統(tǒng)一管理,利用.NET WebService技術(shù)實現(xiàn)用戶單點登錄,實現(xiàn)用戶統(tǒng)一身份認證,為數(shù)字化校園建設(shè)提供了技術(shù)參考。

        【關(guān)鍵詞】統(tǒng)一認證Active DirectoryWebServiceASP.NET單點登錄

        目前,數(shù)字化校園已成為建設(shè)現(xiàn)代化高校的建設(shè)目標之一,基于校園網(wǎng)的應(yīng)用系統(tǒng)也越來越多,如數(shù)字化圖書館、一卡通系統(tǒng)、教務(wù)管理系統(tǒng)、校園網(wǎng)BBS系統(tǒng)等,在沒有統(tǒng)一身份管理的情況下,不同的業(yè)務(wù)系統(tǒng)需要各自維護一套用戶身份信息。對于普通用戶而言,需要對每個系統(tǒng)記憶一套登錄名和密碼。隨著系統(tǒng)數(shù)量增加,用戶必將通過降低密碼復(fù)雜度等為代價記住不同系統(tǒng)的登錄信息。一套統(tǒng)一的身份管理系統(tǒng)能夠讓IT集中精力,只要完善一套身份管理系統(tǒng)的維護,就能提綱挈領(lǐng)統(tǒng)攬全局。

        1統(tǒng)一認證框架設(shè)計

        本系統(tǒng)的框架采用.NET平臺進行設(shè)計,從邏輯角度上將系統(tǒng)框架分為:表示層、業(yè)務(wù)層、業(yè)務(wù)數(shù)據(jù)訪問層、數(shù)據(jù)訪問層,每層完成不同的功能,系統(tǒng)的邏輯框架設(shè)計如圖1所示。

        (1)管理界面使用ASP.NET實現(xiàn),管理員通過IE瀏覽器使用HTTP協(xié)議訪問管理站點,實現(xiàn)用戶信息、部門信息和角色的統(tǒng)一管理。

        圖2統(tǒng)一認證框架結(jié)構(gòu)圖

        (2)接口組件使用ASP.NET Web Services實現(xiàn),應(yīng)用系統(tǒng)通過SOAP協(xié)議與接口組件進行交互,Web Services集成引擎通過各類接口和功能模塊將各應(yīng)用子系統(tǒng)封裝成Web Services部件后發(fā)布到UDDI注冊中心,并通過接口調(diào)用相應(yīng)的應(yīng)用服務(wù),實現(xiàn)系統(tǒng)的單點登錄和授權(quán)服務(wù)。

        (3)所有的功能組件,包括數(shù)據(jù)庫訪問組件和AD訪問組件,使用.NET平臺實現(xiàn),并作為程序集進行發(fā)布。

        (4)SQLServer數(shù)據(jù)庫存儲權(quán)限信息和校內(nèi)用戶信息,Windows活動目錄(AD)是整個統(tǒng)一身份認證系統(tǒng)的基礎(chǔ),采用標準的LDAP目錄服務(wù)數(shù)據(jù)庫,以層次結(jié)構(gòu)、面向?qū)ο蟮臄?shù)據(jù)庫方式存儲校內(nèi)用戶信息和應(yīng)用系統(tǒng)信息,SQLServer數(shù)據(jù)庫和活動目錄實現(xiàn)數(shù)據(jù)同步,保證了數(shù)據(jù)的一致性和完整性,為校園網(wǎng)的各類應(yīng)用系統(tǒng)提供用戶信息的共享和使用。

        (5)數(shù)據(jù)庫訪問組件通過ADO.NET與數(shù)據(jù)庫交互。AD訪問組件通過.NET的類庫使用LDAP協(xié)議與活動目錄交互。

        2統(tǒng)一認證的實現(xiàn)

        統(tǒng)一身份認證平臺包含三大邏輯組成部分:目錄服務(wù)、用戶身份管理服務(wù)和用戶身份認證服務(wù),統(tǒng)一認證系統(tǒng)設(shè)計的核心是用戶身份認證服務(wù),用目錄服務(wù)數(shù)據(jù)庫集中存儲用戶的信息和各個應(yīng)用系統(tǒng)的信息,實現(xiàn)對用戶的集中管理、統(tǒng)一認證和統(tǒng)一授權(quán),以及實現(xiàn)對應(yīng)用系統(tǒng)的訪問控制。

        2.1目錄服務(wù)及用戶身份管理服務(wù)的實現(xiàn)

        目錄服務(wù)是一種特殊的數(shù)據(jù)庫系統(tǒng),可以存儲包括個人信息、web鏈結(jié)、jpeg圖像等各種更新頻率不大的信息。通過運行在TCP/IP之上的訪問協(xié)議—LDAP(Lightweight Directory Access Protocol)輕型目錄訪問協(xié)議訪問Acitve Directory中的數(shù)據(jù)。

        1.目錄設(shè)計

        根據(jù)調(diào)研結(jié)果中的學院、行政機構(gòu)、中心等各種組織機構(gòu)及下級分支機構(gòu)、人員來構(gòu)建整個樹狀目錄。系統(tǒng)目錄設(shè)計按照以下原則進行。

        (1)目錄的根目錄項為學校;

        (2)一個目錄項的子項為該目錄項的一個分支,具有該目錄項的所有屬性;

        (3)若某一目錄項是多個目錄項的下級分支可以選擇一個特定的目錄項存儲其屬性,其他相同目錄項則對其進行引用。

        2.權(quán)限設(shè)計

        在設(shè)計目錄的同時,也必須對其每個分支設(shè)計權(quán)限。通過分析應(yīng)用系統(tǒng)可以將用戶權(quán)限細分成精確的元權(quán)限,系統(tǒng)權(quán)限設(shè)計遵循以下原則。

        (1)將同一分支組織所有成員共有的元權(quán)限設(shè)置成組織權(quán)限;

        (2)其他特殊元權(quán)限,可以根據(jù)這些元權(quán)限來設(shè)計不同的虛擬角色;

        (3)根據(jù)應(yīng)用需要,可以將若干不同角色整合成新的虛擬組;

        (4)對于特定的人員,可以設(shè)置指定的元權(quán)限;

        (5)每一個成員的權(quán)限由指定的元權(quán)限、角色、組和組織權(quán)限4個部分組成,最后表現(xiàn)形式為元權(quán)限的組合。

        3.目錄服務(wù)部署與管理

        在完成系統(tǒng)的細節(jié)設(shè)計后,就可以按照設(shè)計思想在Active Directory上創(chuàng)建目錄,并部署和管理目錄服務(wù)。Active Directory自帶有一套目錄管理系統(tǒng),系統(tǒng)開發(fā)人員可以使用這套系統(tǒng)來管理目錄,也可以按照目錄服務(wù)的要求自行設(shè)計一套管理系統(tǒng),以便更好地滿足目錄管理的需求。

        .Net架構(gòu)對Active Directory提供了豐富的支持功能,其命名空間System.DirectoryServices包含的DirectoryEntry、DirectorySearcher等類庫可與任何Active Directory服務(wù)提供程序一起使用。

        本系統(tǒng)通過ASP.NET來實現(xiàn),采用C#語言,以下是通過ASP.NET實現(xiàn)的用戶驗證的一段代碼。

        private string _path;

        private string _filterAttribute;

        public LdapAuthentication(string path)

        {

        _path = path;

        }

        public bool IsAuthenticated (string domain, string username, string pwd)

        {

        string domainAndUsername = domain + @\"\\" + username;

        DirectoryEntry entry = new DirectoryEntry(_path, domainAndUsername, pwd);

        try

        {

        //結(jié)合本地adsobject強制認證.

        object obj = entry.NativeObject;

        DirectorySearcher search = new DirectorySearcher(entry);

        search.Filter = \"(SAMAccountName=\" + username +\")\";

        search.PropertiesToLoad.Add(\"cn\");

        SearchResult result = search.FindOne( );

        if(1 == result)

        {

        return 1;

        }

        //更新的新路徑給用戶的目錄.

        _path = result.Path;

        _filterAttribute = (string)result.Properties[\"cn\"][0];

        }

        catch (Exception ex)

        {

        throw new Exception (\"用戶身份認證錯誤\" + ex. Message);

        }

        return true;

        }

        2.2用戶身份認證服務(wù)的實現(xiàn)

        Web Services可以看成是部署在Internet上的API,它可以方便被應(yīng)用程序甚至其它Web Services集成和調(diào)用,形成新的應(yīng)用服務(wù)。具有完好的封裝性,松散耦合,高度可集成能力。WebServices技術(shù)是實現(xiàn)“軟件作為一種服務(wù)”的體現(xiàn)。本系統(tǒng)的身份認證子模塊基于ASP.NET Web Service實現(xiàn),以下為參考代碼。

        1. Web服務(wù)的實現(xiàn)

        public class ValidateLoginService : System.Web.Services. WebService

        { public ValidateLoginService( )

        { InitializeComponent( );

        }

        [WebMethod(EnableSession = true)]

        public bool DoValidate (string domain, string username, string userpwd)

        { if (username != 1 userpwd != 1)

        { //判斷是否已經(jīng)有驗證通過記錄

        if (Session[\"name\"] == 1)

        { //查找用戶名是否存在

        if (IsAuthenticated(domain, username, userpwd) == true)//調(diào)用身份認證方法

        { Session[\"name\"] = true;//該用戶的驗證記錄。避免下次再次驗證。

        return true;

        }

        else

        { return 1;

        }

        }

        else

        { return true;

        }

        }

        else

        { return 1;

        }

        }

        }

        2.客戶程序登錄按鈕中WEB服務(wù)的調(diào)用

        string domain=this.TxtDomain.Text;

        string name = this.TxtName.Text;

        string password = this.TxtPwd.Text;

        //判斷用戶名跟密碼是否匹配

        ValidateLoginService v = new ValidateLoginService( );

        if (v.DoValidate(domain,name, password) == true)

        { //寫入Cookie代碼省略

        Session[\"name\"] = name;//登錄成功,并保存登錄姓名

        }

        else

        {//登錄失敗

        }

        3.客戶程序首頁Page_Load中WEB服務(wù)的調(diào)用

        if(!IsPostBack)

        { //判斷Cookie是否存在,如果已存在則讀取

        ValidateLoginService v = new ValidateLoginService();

        if (v.DoValidate (cookieDomain,cookieName, cookiePassword) == true)

        {//用戶已經(jīng)登錄

        }

        else

        {//用戶未登錄

        }

        }

        3結(jié)論

        本文結(jié)合Windows活動目錄(AD)和SQLServer數(shù)據(jù)庫技術(shù),利用微軟的.NET PassPort認證機制,向應(yīng)用提供標準的SOAP服務(wù),為應(yīng)用的認證提供通用的接口和認證頁面,并調(diào)用后臺的WebService認證技術(shù)實現(xiàn)用戶單點登錄,設(shè)計實現(xiàn)了一個基于Web的校園網(wǎng)統(tǒng)一身份認證系統(tǒng)。

        亚洲精品久久久久中文字幕| 女同同成片av免费观看| 美利坚合众国亚洲视频| 午夜天堂av天堂久久久| 亚洲精品乱码久久久久久日本蜜臀| 国产一区曰韩二区欧美三区| 国产男女做爰猛烈视频网站| 美女免费观看一区二区三区| 朝鲜女人大白屁股ass孕交 | 欧美性猛交xxxx黑人| 大胸美女吃奶爽死视频| 亚洲熟妇av一区二区三区hd| 在线观看特色大片免费视频| 亚洲av成人无码久久精品 | 中文无码制服丝袜人妻av| 国产成人精品免费视频大全| 国产专区亚洲专区久久| 亚洲精品国产综合久久一线| 国产偷闻女邻居av在线观看| 亚洲综合精品中文字幕| 国产精品久久久久久亚洲av| 韩国精品一区二区三区无码视频| av一区二区三区亚洲| 风流少妇一区二区三区91 | 中国丰满人妻videoshd| 免费国产交换配乱淫| 亚洲精品中文字幕尤物综合 | 中文字幕精品亚洲字幕| 人人妻人人狠人人爽天天综合网| 国产成人亚洲精品91专区手机| 青青草国内视频在线观看| 久久精品av在线观看| 国产成人av大片大片在线播放| 日韩永久免费无码AV电影| 日韩产的人妻av在线网| 97久人人做人人妻人人玩精品| 最近中文字幕完整版| 亚洲精品综合在线影院| 久久精品国产亚洲av四叶草| 亚洲国产成人无码av在线影院| 久久亚洲国产成人亚|