引言
進入21世紀以來,世界進入到新經濟時代,新技術的變化日新月異,而信息化成為全球經濟發展的強大推動力。計算機網絡和信息技術的迅速發展使得企業或政府部門擁有越來越多的信息化應用系統,如政府科研單位的門戶網站網上辦公平臺,包括的系統有科研管理系統、科研申報系統、內部郵件管理系統、財務管理系統。各系統通常由不同的部門管理,并且由不同的單位開發,這樣可能有不同的用戶名和密碼,即各系統使用不同的數據庫,各系統使用不同的認證模式與體系,而隨著業務的增加,業務系統的數量也會越來越多,用戶需要記憶越來越多的用戶名和密碼。一個信息孤島,如圖1所示:
圖1信息孤島
這種現狀不僅造成了用戶因遺漏或忘記密碼而帶來損失,而且在進入每個系統都要重新登錄一次密碼,大大降低了工作效率.如圖2所示:
圖2各業務系統登錄模式現狀
根據現狀,本文提出了一套解決該問題的關鍵技術,該技術探討了如何設計一個安全并高效的統一登錄系統及其實現的關鍵技術。本文主要介紹了統一單點登錄系統的設計與實現原理。
1 HTTPS簡介
HTTPS(全稱:Hypertext Transfer Protocol over SecureSocket Layer),是以安全為目標的HTlP通道.簡單講是HTTP的安全版。即HTTP下加入SSL層,HTTPS的安全基礎是SSL,因此加密的詳細內容就需要SSL。它是一個URI scherne(抽象標識符體系),句法類同hap:體系。用于安全的HTTP數據傳輸。https:URL表明它使用了HTTP,但HTTPS存在不同于HTTP的默認端口及一個加密/身份驗證層(在HTTP與TCP之間)。這個系統的最初研發由網景公司進行,提供了身份驗證與加密通訊方法,現在它被廣泛用于萬維網上安全敏感的通訊,例如交易支付方面。
1.1 HTTPS與HTTP的區別
HTTPS與HTTP區別有很多,主要區別有以下四點。
1、HTTPS協議需要到ca申請證書,一般免費證書很少,需要交費。
2、HTTP是超文本傳輸協議,信息是明文傳輸,HTTPS則是具有安全性的SSL加密傳輸協議。
3、HTTP和HTTPS使用的是完全不同的連接方式,用的端口也不一樣,前者是80,后者是443。
4、HTTP的連接很簡單.是無狀態的;HTTPS協議是由SSL+HTTP協議構建的可進行加密傳輸、身份認證的網絡協議,比HTTP協議安全。
1.2 HTTPS的用途
1.2.1在信任主機上的應用
采用HTTPs的服務器必須從CA(certificate Authority)申請一個用于證明服務器用途類型的證書。該證書只有用于對應的服務器的時候,客戶端才信任主機。所以目前所有的銀行系統網站,關鍵部分應用都是https的。客戶通過信任該證書,從而信任了該主機。其實這樣做效率很低,但是銀行更側重安全。這一點對我們沒有任何意義,我們的服務器,采用的證書不管是自己發布的還是從公眾的地方發布的,其客戶端都是自己人,所以我們也就肯定信任該服務器。
1.2.2對通信過程中的數據保護
一般意義上的HTTPS的原理就是每個服務器有一個自己獨有的證書,主要目的保證服務器數據的安全性。服務器和客戶端之間的所有通訊都是加密的,具體來講.是客戶端產生的一個對稱的密鑰,通過服務器的證書來交換密鑰,即一般意義上的握手過程;接下來所有的信息往來都是加密,即使在某些條件下被截獲,他沒有這個密鑰,也沒有任何意義。在有一些類似銀行、證券、支付寶等網上交易平臺,也會要求客戶端也裝一個證書。這個證書就是類似表示個人信息的時候,除了用戶名和密碼,還有一個CA認證過的身份。
2系統總體設計
2.1系統設計需求
根據該系統的設計初衷,統一登錄系統設計需求應該包括以下幾個方面:
統一登錄,對于用戶擁有權限的一個或者多個應用系統,統一用戶名和密碼,對于多個應用系統來說,只需登錄一次即可,切換應用系統時,不需要重復登錄。例如用戶張三同時擁有應用系統A、B、C和D,當輸入用戶名和密碼進入到應用系統A,當再進入到應用系統B、C和D時,就不用再輸入用戶名和密碼。
安裝簡單,該單點登錄系統能與其他系統實現無縫連接,所屬系統無需修改源代碼或者修改少量簡單代碼。
接口存留,能預留接口為以后可能開發其他功能。
簡單接入,當用戶新擁有其他應用系統的權限時,單點登錄系統能快速方便地接入新的應用系統。
安全可靠,采用CA的公私密鑰技術和HTTPS技術來解決用戶的身份認證、安全傳輸與角色制定等相關問題。
2.2系統的運行模式
信息系統運行模式大體上分為四種:主機終端模式、文件服務器模式、客戶機朋臣務器模式(C/S)和瀏覽器/服務器模式(B/S),其中主機終端模式由于硬件投資巨大,現在已經較少使用:而文件服務器模式只適用小規模的局域網,在用戶比較多、數據量大的情況下。就會產生網絡瓶頸,特別是在互聯網上不能滿足用戶要求。因此,現在大部分信息管理系統都使用C/S模式和B/S模式,本系統是B/S模式。系統總體結構圖,如圖3所示:
圖3系統總體結構圖
3 系統的實現
3.1系統實現
根據系統總體結構圖,本系統實現原理是基于HTTPS協議以及其相關握手理論,使用腳本語言.本系統代碼為<SCript type=”text/javascript”src=”http://localhost:7771/SSOSite/SSOContext aspx?app-=portal”></script>形式遠程調用單點登錄系統上的腳本,獲取加密后的用戶登錄票據信息,自動綁定到當前頁表單的相應字段,井自動提交到后臺。后臺解密前臺提交的用戶登錄票據信息,判定用戶是否已在單點登錄系統上成功的登錄,如果已登錄返回系統首頁,如果沒有登錄.跳轉到單點登錄系統登錄頁。使用DES加密用戶登錄票據信息,不同應用系統使用不同密鑰。
基于WEB的HTTPS的會話使用SSL協議,而SSL協議在握手協商階段會發送相關公鑰證書,在本文中運用了相關算法把公鑰修改為了自己私有的密鑰,從而去迷惑客戶端的用戶。這個其中涉及到了一些類似中間人的攻擊SSL會話,該會話過程的詳細過程客戶端如圖4所示:
圖4中間人攻擊SSL會話
在本系統設計中,使用IIS6.0配置Web站點:在使用HTTPs創建安全站點時,需要使用計算機證書來驗證身份,故在安裝本系統之前時,需要安裝一個證書。如圖5所示
圖5計算機CA認證證書
系統接受用戶登錄信息,并根據設置,改寫HTTP頭后轉發到應用服務器,并從應用服務器收到返回信息轉發回用戶,流程圖,如圖6所示:
圖6通訊流程圖
系統的管理機制主要分為在接入管理、用戶管理與應用管理3方面。
3.2系統應用
以下是一個應用的簡單例子,人力資源管理系統和財務管理系統是兩個獨立的系統,需要各自輸入用戶名和密碼才能進入到系統,應用單點登錄系統之后只需要輸一次用戶名和密碼即可,如圖7和圖8所示:
圖7應用單點登錄系統之前的登錄模式
圖8應用單點登錄系統之后的登錄模式
4 結論
本主的主要內容是基于HTTPS協議設計開發出了一套單點登錄系統,該系統實現了單點登錄與全網訪問。在各應用管理系統修改少量代碼后,系統能方便用戶使用,可以真正做到系統實施過程的安全整合。在該單點登錄系統的基礎上還可以有一些深層次的開發,比如各管理系統的信息分析與相關數據共享等。
核心關注:拓步ERP系統平臺是覆蓋了眾多的業務領域、行業應用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業務管理理念,功能涉及供應鏈、成本、制造、CRM、HR等眾多業務領域的管理,全面涵蓋了企業關注ERP管理系統的核心領域,是眾多中小企業信息化建設首選的ERP管理軟件信賴品牌。
轉載請注明出處:拓步ERP資訊網http://m.lukmueng.com/
本文標題:HTTPS協議在單點登錄系統的應用