專利名稱:訪問控制方法及安全代理服務器的制作方法
技術領域:
本發明涉及計算機通信技術,特別涉及基于SSL協議的安全訪問控制技術。
背景技術:
加密套接字協議層(SSL,Secure Sockets Layer)是一種由Netscape開發的的安全協議。當SSL會話開始后,Web服務器將公共密鑰發送給瀏覽器,在服務器和瀏覽器之間進行協商,生成進行安全傳輸的加密環境。瀏覽器和服務器在會話期間,使用該安全環境進行數據交換,從而實現數據傳輸的機密性和完整性。
在基于SSL協議的應用代理中,在應用代理服務器和應用代理客戶端之間使用了SSL/TLS協議來實現機密性和完整性的保護。即在應用代理客戶端進行訪問時,可以保證所代理的服務的機密性和完整性。但是在實際應用中,往往還需要實現對不同用戶的訪問控制,即哪些用戶可以訪問哪些服務,這些需求就已經超出了SSL協議的范圍。
通常,這種訪問是在應用服務系統中實現的,即應用系統本身提供一套自己的基于權限的訪問控制機制,在用戶使用該應用系統時通過該機制實現對用戶的訪問控制。
但是這種機制只是對某一個應用系統而言的,并不能針對網絡中提供的所有服務進行統一的訪問控制。
發明內容
本發明所要解決的技術問題是,提供一種基于數字證書中DN(Distinguished Name可識別名)元素的訪問控制技術,能夠實現在安全代理的同時,對網絡中提供的所有服務的統一的訪問控制。
本發明解決所述技術問題采用的技術方案是,提供一種訪問控制方法,根據訪問控制列表對來自代理客戶端的訪問作訪問控制,所述訪問控制列表中記載有用戶身份標識模板——處理動作映射關系。
所述用戶身份標識模板為代理客戶端證書DN模板。通過證書主體DN與DN模板匹配的結果識別用戶。當代理服務器接收到來自客戶端的SSL連接時,代理服務器從客戶端用戶的數字證書中提取主體DN,并與所建立的訪問控制列表進行匹配;如果能夠匹配,則根據匹配結果處理該連接;如果不能匹配,則根據缺省的動作進行處理。所述處理動作包括允許或拒絕既定種類的訪問。所述處理動作包括允許或拒絕對某既定地址的既定種類的訪問。所述既定地址為既定提供服務的服務器地址,所述既定種類的訪問包括HTTP、FTP、或TELNET、或用戶自定義的基于TCP的服務種類。所述代理客戶端為SSL代理客戶端,所述代理服務器為SSL代理服務器。
上述“用戶身份標識模板”可以為主體DN模板。在對特定的用戶,或者說,對主體DN各項屬性都得到指定的情況下,表現為主體DN,本文視為DN模板的一種形式。如具體實施方式
中的list1。
本發明還提供一種帶訪問控制的安全代理服務器,包括SSL代理裝置,還包括訪問控制裝置,所述訪問控制裝置包括存儲裝置,存儲有訪問控制列表;處理裝置,從客戶端證書中提取主體DN并與存儲裝置中的訪問控制列表進行匹配,根據匹配結果進行相應的處理。
本發明的有益效果是1、在使用SSL協議進行安全防護的基礎上提供了對所代理服務的訪問控制功能;2、對代理范圍內的所有應用系統可以提供統一的訪問控制規劃;3、可以通過對所申請證書中不同的主體DN靈活進行訪問權限控制。
以下結合說明書附圖和具體實施方式
對本發明作進一步的說明。
圖1是本發明具體實施方式
中涉及的網絡連接示意圖。
圖2是本發明具體實施方式
的流程圖。
圖3本發明實施例1的網絡連接圖。
具體實施例方式
參見圖1和圖2,本發明涉及基于SSL協議的代理服務器端和代理客戶端。在SSL協議中同時使用服務器端及客戶端證書驗證,即在SSL代理服務器端使用SSL服務器證書,在SSL代理客戶端使用SSL客戶端證書,用戶在使用時,需要使用SSL客戶端證書進行登錄,才能與SSL代理服務器連接。由于數字證書中使用主體DN來標識用戶的名稱,因此基于數字證書的訪問控制也就是對主體DN中指明的用戶進行訪問控制。在SSL代理服務器端實現基于數字證書中主體DN元素的訪問控制列表,每條控制列表可以包含若干條目,每一條目由需要匹配的DN模板及處理動作組成,即可以指定主體DN滿足某一DN匹配模板的用戶的訪問權限,該訪問權限可以指定為拒絕或者允許。所述DN模板由標準數字證書的主體DN信息抽取出來,是數字證書主體DN字段的組合,本文所述的數字證書是指采用標準的X509 v3證書格式,在該證書格式中包含的信息字段主要有證書版本號、證書序列號、證書頒發者、證書主體、證書有效期、公鑰算法信息等。其中證書頒發者和證書主體都使用DN的方式表示,證書主體是證書的擁有者,而頒發者是指對該證書進行頒發的CA。我們所作的訪問控制就是針對證書的擁有者即證書主體進行控制,因此我們使用主體DN作為我們控制的對象。
DN由一系列的相對可識別名(RDN,Relative DistinguishedName)組成,RDN通常包括CN、OU、O、L、ST及C(CN、OU、O、L、ST、C用于標注對象的屬性)。我們即以這六項為DN匹配模板的基本元素建立訪問控制列表(ACL),當SSL服務器接收到來自客戶端的SSL連接時,服務器從客戶端用戶的數字證書中提取出該用戶的DN,并與所建立的ACL進行匹配,如果匹配上,則根據所匹配的ACL條目的動作是允許還是拒絕來確定對該連接的處理,如果匹配不上,則根據缺省的ACL動作進行處理。
具體的說,實施步驟如下1、在SSL代理服務器中設置對“HTTP服務”、“FTP服務”及“其它服務”的代理。
2、SSL代理服務器實現為要求對客戶端證書進行驗證。
3、在SSL代理服務器端建立所需要的訪問控制列表。
4、當從SSL代理客戶端發來對某一服務的請求時,SSL服務器端根據所定義的訪問控制列表及從客戶端證書中提取出來的用戶DN進行比較,并且根據訪問控制列表所指定的動作進行下一步操作。
以下為更具體的實施例,如圖3。
在被保護內網與外網之間,布署代理服務器,其外網接口地址為202.115.72.23,內部網接口地址192.168.0.1;代理服務器代理某公司內部網絡中的三臺不同應用服務器,即HTTP服務器、FTP服務器及其它服務器(如mis系統等)。
各服務器所對應的IP地址如下192.168.0.23——MIS192.168.0.25——FTP192.168.0.27——HTTP對這三種不同類型的應用的訪問權限假設為1、公司所有的員工都可以訪問HTTP服務器;2、除公司研究院員工外其它部門的員工都可以訪問FTP服務器;3、只有人力資源部的甲和乙可以訪問公司的MIS系統。
針對以上的訪問權限控制,我們在代理服務器上配置以下訪問控制列表在證書管理系統對員工進行證書頒發時,作以下定義公司名稱定義為mp;研究院部門名稱定義為R&D;人力資源部門名稱定義為PR。
list 1cn=甲,ou=PR,o=mp,c=cnpermitcn=乙,ou=PR,o=mp,c=cnpermitlist 2cn=any,ou=any,o=mp,c=cnpermitlist 3cn=any,ou=R&D,o=mp,c=cndeny解釋如下list 1“cn=甲,ou=PR,o=mp,c=cn”為DN匹配模板,“permit”為對應的處理動作。
若主體DN和“cn=甲,ou=PR,o=mp”匹配,則實施處理動作“允許”;
若主體DN和“cn=乙,ou=PR,o=mp”匹配,則實施處理動作“允許”;list 2若主體DN和“o=mp”匹配,則實施處理動作允許;list 3若主體DN和“ou=R&D,o=mp”匹配,則實施處理動作“拒絕”。
上述list2和list3中含有“cn=any”,表示cn任意。
將以上所定義的訪問控制列表應用到所代理的應用服務上,即可實現對不同服務的訪問控制。如下所示proxy http 192.168.0.2780 list 2proxy ftp 192.168.0.2521 list 3proxy mis 192.168.0.238888 list 1解釋如下對192.168.0.27服務器的http訪問應用列表2;對192.168.0.25服務器的ftp訪問應用列表3;對192.168.0.27服務器的mis訪問應用列表1。
權利要求
1.訪問控制方法,其特征在于,根據訪問控制列表對來自代理客戶端的訪問作訪問控制,所述訪問控制列表中記載有用戶身份標識模板——處理動作映射關系。
2.如權利要求1所述的訪問控制方法,其特征在于,所述用戶身份標識模板為代理客戶端證書DN模板。
3.如權利要求2所述的訪問控制方法,其特征在于,當代理服務器接收到來自客戶端的SSL連接時,代理服務器從客戶端用戶的數字證書中提取主體DN,并與所建立的訪問控制列表進行匹配;如果能夠匹配,則根據匹配結果處理該連接;如果不能匹配,則根據缺省的動作進行處理。
4.如權利要求2所述的訪問控制方法,其特征在于,所述處理動作包括允許或拒絕既定種類的訪問。
5.如權利要求2所述的訪問控制方法,其特征在于,所述處理動作包括允許或拒絕對某既定地址的既定種類的訪問。
6.如權利要求5所述的訪問控制方法,其特征在于,所述既定地址為既定提供服務的服務器地址,所述既定種類的訪問包括HTTP、FTP、TELNET或用戶自定義的基于TCP的服務種類。
7.如權利要求1-5所述的訪問控制方法,其特征在于,所述代理客戶端為SSL代理客戶端,所述代理服務器為SSL代理服務器。
8.安全代理服務器,包括SSL代理裝置,其特征在于,還包括訪問控制裝置,所述訪問控制裝置包括存儲裝置,存儲有訪問控制列表;處理裝置,從客戶端證書中提取DN并與存儲裝置中的訪問控制列表進行匹配,根據匹配結果進行相應的處理。
全文摘要
訪問控制方法,涉及計算機通信技術,特別涉及基于SSL協議的安全訪問控制技術。本發明根據訪問控制列表對來自代理客戶端的訪問作訪問控制,所述訪問控制列表中記載有用戶身份標識模板——處理動作映射關系。本發明的有益效果是在使用SSL協議進行安全防護的基礎上提供了對所代理服務的訪問控制功能;對代理范圍內的所有應用系統可以提供統一的訪問控制規劃;可以通過對所申請證書中不同的主體DN靈活進行訪問權限控制。
文檔編號H04L9/32GK1738255SQ20041004047
公開日2006年2月22日 申請日期2004年8月17日 優先權日2004年8月17日
發明者杜勇, 孟春雷 申請人:邁普(四川)通信技術有限公司