十年網(wǎng)站開(kāi)發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶(hù) + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營(yíng)維護(hù)+專(zhuān)業(yè)推廣+無(wú)憂(yōu)售后,網(wǎng)站問(wèn)題一站解決
昨天碰到了一篇講單點(diǎn)登錄(SSO)的文章,作者可能是從字面意思理解的單點(diǎn)登錄(只允許一個(gè)地方登錄,一方登陸了,另一方就要下線,這種應(yīng)該是單設(shè)備登錄)。正好最近我也在處理多系統(tǒng)訪問(wèn)的問(wèn)題,也要用到單點(diǎn)登錄,就打算整理點(diǎn)東西。
創(chuàng)新互聯(lián)公司專(zhuān)注于赫章網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供赫章?tīng)I(yíng)銷(xiāo)型網(wǎng)站建設(shè),赫章網(wǎng)站制作、赫章網(wǎng)頁(yè)設(shè)計(jì)、赫章網(wǎng)站官網(wǎng)定制、成都小程序開(kāi)發(fā)服務(wù),打造赫章網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供赫章網(wǎng)站排名全網(wǎng)營(yíng)銷(xiāo)落地服務(wù)。
單點(diǎn)登錄: 英文Single Sign On,根據(jù)英文含義不難理解,即:?jiǎn)我粯?biāo)記(單點(diǎn))登錄。就是說(shuō),我只需要登錄一次。例如:QQ,我在QQ空間登錄一次,我可以去訪問(wèn)QQ產(chǎn)品的其他服務(wù):QQ郵箱、騰訊新聞等,都能保證你的賬戶(hù)保持登錄狀態(tài)。
單設(shè)備登錄: 就是只能在一個(gè)設(shè)備上登錄,若同時(shí)在其他設(shè)備登錄,先前登錄的用戶(hù)會(huì)被提醒:該賬戶(hù)在其他設(shè)備登錄。例如qq,小米手機(jī)登錄中,同時(shí)拿華為手機(jī)登錄該賬戶(hù),小米手機(jī)的賬戶(hù)會(huì)被擠下線。
SSO(Single Sign-On)是一種統(tǒng)一認(rèn)證和授權(quán)機(jī)制,指訪問(wèn)同一服務(wù)器不同應(yīng)用中的受保護(hù)資源的同一用戶(hù),只需要登錄一次,即通過(guò)一個(gè)應(yīng)用中的安全驗(yàn)證后,再訪問(wèn)其他應(yīng)用中的受保護(hù)資源時(shí),不再需要重新登錄驗(yàn)證。
解決了用戶(hù)只需要登錄一次就可以訪問(wèn)所有相互信任的應(yīng)用系統(tǒng),而不用重復(fù)登錄。
如下圖所示:
當(dāng)用戶(hù)第一次訪問(wèn)應(yīng)用系統(tǒng)1的時(shí)候,因?yàn)檫€沒(méi)有登錄,會(huì)被引導(dǎo)到認(rèn)證系統(tǒng)中進(jìn)行登錄;根據(jù)用戶(hù)提供的登錄信息,認(rèn)證系統(tǒng)進(jìn)行身份效驗(yàn),如果通過(guò)效驗(yàn),應(yīng)該返回給用戶(hù)一個(gè)認(rèn)證的憑據(jù)--ticket;用戶(hù)再訪問(wèn)別的應(yīng)用的時(shí)候,就會(huì)將這個(gè)ticket帶上,作為自己認(rèn)證的憑據(jù),應(yīng)用系統(tǒng)接受到請(qǐng)求之后會(huì)把ticket送到認(rèn)證系統(tǒng)進(jìn)行效驗(yàn),檢查ticket的合法性(4,6)。如果通過(guò)效驗(yàn),用戶(hù)就可以在不用再次登錄的情況下訪問(wèn)應(yīng)用系統(tǒng)2和應(yīng)用系統(tǒng)3了。
從上圖可以看出sso的實(shí)現(xiàn)技術(shù)點(diǎn):
1)所有應(yīng)用系統(tǒng)共享 一個(gè)身份認(rèn)證系統(tǒng) 。
統(tǒng)一的認(rèn)證系統(tǒng)是SSO的前提之一。
認(rèn)證系統(tǒng)的主要功能是將用戶(hù)的登錄信息和用戶(hù)信息庫(kù)相比較,對(duì)用戶(hù)進(jìn)行登錄認(rèn)證;認(rèn)證成功后,認(rèn)證系統(tǒng)應(yīng)該生成統(tǒng)一的認(rèn)證標(biāo)志(ticket),返還給用戶(hù)。
另外,認(rèn)證系統(tǒng)還應(yīng)該對(duì)ticket進(jìn)行效驗(yàn),判斷其有效性。
2)所有應(yīng)用系統(tǒng)能夠識(shí)別和提取ticket信息
要實(shí)現(xiàn)SSO的功能,讓用戶(hù)只登錄一次,就必須讓?xiě)?yīng)用系統(tǒng)能夠識(shí)別已經(jīng)登錄過(guò)的用戶(hù)。
應(yīng)用系統(tǒng)應(yīng)該能對(duì)ticket進(jìn)行識(shí)別和提取,通過(guò)與認(rèn)證系統(tǒng)的通訊,能自動(dòng)判斷當(dāng)前用戶(hù)是否登錄過(guò),從而完成單點(diǎn)登錄的功能。
關(guān)于 統(tǒng)一身份認(rèn)證機(jī)制 :如下圖
①用戶(hù)請(qǐng)求訪問(wèn)業(yè)務(wù)系統(tǒng)。
②業(yè)務(wù)系統(tǒng)在系統(tǒng)中查看是否有對(duì)應(yīng)請(qǐng)求的有效令牌,若有,則讀取對(duì)應(yīng)的身份信息,允許其訪問(wèn);若沒(méi)有或令牌無(wú)效,則把用戶(hù)重定向到統(tǒng)一身份認(rèn)證平臺(tái),并攜帶業(yè)務(wù)系統(tǒng)地址,進(jìn)入第③步。
③在統(tǒng)一身份認(rèn)證平臺(tái)提供的頁(yè)面中,用戶(hù)輸入身份憑證信息,平臺(tái)驗(yàn)證此身份憑證信息,若有效,則生成一個(gè)有效的令牌給用戶(hù),進(jìn)入第④步;若無(wú)效,則繼續(xù)進(jìn)行認(rèn)證,直到認(rèn)證成功或退出為止。
④用戶(hù)攜帶第③步獲取的令牌,再次訪問(wèn)業(yè)務(wù)系統(tǒng)。
⑤業(yè)務(wù)系統(tǒng)獲取用戶(hù)攜帶的令牌,提交到認(rèn)證平臺(tái)進(jìn)行有效性檢查和身份信息獲取。
⑥若令牌通過(guò)有效性檢查,則認(rèn)證平臺(tái)會(huì)把令牌對(duì)應(yīng)的用戶(hù)身份信息返回給業(yè)務(wù)系統(tǒng),業(yè)務(wù)系統(tǒng)把身份信息和有效令牌寫(xiě)入會(huì)話(huà)狀態(tài)中,允許用戶(hù)以此身份信息進(jìn)行業(yè)務(wù)系統(tǒng)的各種操作;若令牌未通過(guò)有效性檢查,則會(huì)再次重定向到認(rèn)證平臺(tái),返回第③步。
1)提高用戶(hù)的效率。
用戶(hù)不再被多次登錄困擾,也不需要記住多個(gè) ID 和密碼。另外,用戶(hù)忘記密碼并求助于支持人員的情況也會(huì)減少。
2)提高開(kāi)發(fā)人員的效率。
SSO 為開(kāi)發(fā)人員提供了一個(gè)通用的身份驗(yàn)證框架。
實(shí)際上,如果 SSO 機(jī)制是獨(dú)立的,那么開(kāi)發(fā)人員就完全不需要為身份驗(yàn)證操心。
他們可以假設(shè),只要對(duì)應(yīng)用程序的請(qǐng)求附帶一個(gè)用戶(hù)名,身份驗(yàn)證就已經(jīng)完成了。
3)簡(jiǎn)化管理。
如果應(yīng)用程序加入了單點(diǎn)登錄協(xié)議,管理用戶(hù)帳號(hào)的負(fù)擔(dān)就會(huì)減輕。
簡(jiǎn)化的程度取決于應(yīng)用程序,因?yàn)?SSO 只處理身份驗(yàn)證。
所以,應(yīng)用程序可能仍然需要設(shè)置用戶(hù)的屬性(比如訪問(wèn)特權(quán))。
1)不利于重構(gòu)
因?yàn)樯婕暗降南到y(tǒng)很多,要重構(gòu)必須要兼容所有的系統(tǒng),可能很耗時(shí)
2) 無(wú)人看守桌面
因?yàn)橹恍枰卿浺淮?,所有的授?quán)的應(yīng)用系統(tǒng)都可以訪問(wèn),可能導(dǎo)致一些很重要的信息泄露。
Kerberos是一種網(wǎng)絡(luò)認(rèn)證協(xié)議(Network Authentication Protocol) ,其設(shè)計(jì)目標(biāo)是通過(guò)密鑰系統(tǒng)為客戶(hù)機(jī) / 服務(wù)器應(yīng)用程序提供強(qiáng)大的認(rèn)證服務(wù)。該認(rèn)證過(guò)程的實(shí)現(xiàn)不依賴(lài)于主機(jī)操作系統(tǒng)的認(rèn)證,無(wú)需基于主機(jī)地址的信任,不要求網(wǎng)絡(luò)上所有主機(jī)的物理安全,并假定網(wǎng)絡(luò)上傳送的數(shù)據(jù)包可以被任意地讀取、修改和插入數(shù)據(jù)。
在以上情況下, Kerberos 作為一種可信任的第三方認(rèn)證服務(wù),是通過(guò)傳統(tǒng)的密碼技術(shù)(如:共享密鑰)執(zhí)行認(rèn)證服務(wù)的。
認(rèn)證過(guò)程具體如下:客戶(hù)機(jī)向認(rèn)證服務(wù)器(AS)發(fā)送請(qǐng)求,要求得到某服務(wù)器的證書(shū),然后 AS 的響應(yīng)包含這些用客戶(hù)端密鑰加密的證書(shū)。
證書(shū)的構(gòu)成為:
1、服務(wù)器 "ticket" ;
2、一個(gè)臨時(shí)加密密鑰(又稱(chēng)為會(huì)話(huà)密鑰 "session key") 。
客戶(hù)機(jī)將 ticket (包括用服務(wù)器密鑰加密的客戶(hù)機(jī)身份和一份會(huì)話(huà)密鑰的拷貝)傳送到服務(wù)器上。會(huì)話(huà)密鑰可以(現(xiàn)已經(jīng)由客戶(hù)機(jī)和服務(wù)器共享)用來(lái)認(rèn)證客戶(hù)機(jī)或認(rèn)證服務(wù)器,也可用來(lái)為通信雙方以后的通訊提供加密服務(wù),或通過(guò)交換獨(dú)立子會(huì)話(huà)密鑰為通信雙方提供進(jìn)一步的通信加密服務(wù)。
PKI是一種技術(shù),個(gè)人信息保護(hù)認(rèn)證是一個(gè)應(yīng)用。PKI是一種新的安全技術(shù),它由公開(kāi)密鑰密碼技術(shù)、數(shù)字證書(shū)、證書(shū)發(fā)放機(jī)構(gòu)(CA)和關(guān)于公開(kāi)密鑰的安全策略等基本成分共同組成的。PKI是利用公鑰技術(shù)實(shí)現(xiàn)電子商務(wù)安全的一種體系,是一種基礎(chǔ)設(shè)施,網(wǎng)絡(luò)通訊、網(wǎng)上交易是利用它來(lái)保證安全的。從某種意義上講,PKI包含了安全認(rèn)證系統(tǒng),即安全認(rèn)證系統(tǒng)-CA/RA系統(tǒng)是PKI不可缺的組成部分。 PKI(Public Key Infrastructure)公鑰基礎(chǔ)設(shè)施是提供公鑰加密和數(shù)字簽名服務(wù)的系統(tǒng)或平臺(tái),目的是為了管理密鑰和證書(shū)。一個(gè)機(jī)構(gòu)通過(guò)采用PKI框架管理密鑰和證書(shū)可以建立一個(gè)安全的網(wǎng)絡(luò)環(huán)境。PKI主要包括四個(gè)部分:X.509格式的證書(shū)(X.509 V3)和證書(shū)廢止列表CRL(X.509 V2);CA/RA操作協(xié)議;CA管理協(xié)議;CA政策制定。一個(gè)典型、完整、有效的PKI應(yīng)用系統(tǒng)至少應(yīng)具有以下部分; . 認(rèn)證中心CA CA是PKI的核心,CA負(fù)責(zé)管理PKI結(jié)構(gòu)下的所有用戶(hù)(包括各種應(yīng)用程序)的證書(shū),把用戶(hù)的公鑰和用戶(hù)的其他信息捆綁在一起,在網(wǎng)上驗(yàn)證用戶(hù)的身份,CA還要負(fù)責(zé)用戶(hù)證書(shū)的黑名單登記和黑名單發(fā)布,后面有CA的詳細(xì)描述。 . X.500目錄服務(wù)器 X.500目錄服務(wù)器用于發(fā)布用戶(hù)的證書(shū)和黑名單信息,用戶(hù)可通過(guò)標(biāo)準(zhǔn)的LDAP協(xié)議查詢(xún)自己或其他人的證書(shū)和下載黑名單信息。 . 具有高強(qiáng)度密碼算法(SSL)的安全WWW服務(wù)器 出口到中國(guó)的WWW服務(wù)器,如微軟的IIS、Netscape的WWW服務(wù)器等,受出口限制,其RSA算法的模長(zhǎng)最高為512位,對(duì)稱(chēng)算法為40位,不能滿(mǎn)足對(duì)安全性要求很高的場(chǎng)合,為解決這一問(wèn)題,采用了山東大學(xué)網(wǎng)絡(luò)信息安全研究所開(kāi)發(fā)的具有自主版權(quán)的SSL安全模塊,在SSL安全模塊中使用了自主開(kāi)發(fā)的SJY系列密碼設(shè)備,并且把SSL模塊集成在Apache WWW服務(wù)器中,Apache WWW服務(wù)器在WWW服務(wù)器市場(chǎng)中占有百分之50以上的份額,其可移植性和穩(wěn)定性很高。 . Web(安全通信平臺(tái)) Web有Web Client端和Web Server端兩部分,分別安裝在客戶(hù)端和服務(wù)器端,通過(guò)具有高強(qiáng)度密碼算法的SSL協(xié)議保證客戶(hù)端和服務(wù)器端數(shù)據(jù)的機(jī)密性、完整性、身份驗(yàn)證。 . 自開(kāi)發(fā)安全應(yīng)用系統(tǒng) 自開(kāi)發(fā)安全應(yīng)用系統(tǒng)是指各行業(yè)自開(kāi)發(fā)的各種具體應(yīng)用系統(tǒng),例如銀行、證券的應(yīng)用系統(tǒng)等。 完整的PKI包括認(rèn)證政策的制定(包括遵循的技術(shù)標(biāo)準(zhǔn)、各CA之間的上下級(jí)或同級(jí)關(guān)系、安全策略、安全程度、服務(wù)對(duì)象、管理原則和框架等)、認(rèn)證規(guī)則、運(yùn)作制度的制定、所涉及的各方法律關(guān)系內(nèi)容以及技術(shù)的實(shí)現(xiàn)。
線路及通信控制局(ChannelandTrafficControlAgency);信道至信道轉(zhuǎn)接器(Channel-to-ChannelAdapter)。
DesignandimplementationofthesmartcardmanagerbasedonCTCA基于CTCA的智能卡協(xié)調(diào)管理器的設(shè)計(jì)與實(shí)現(xiàn)。
DesignandimplementationofthesmartcardmanagerbasedonCTCA。
基于CTCA的智能卡協(xié)調(diào)管理器的設(shè)計(jì)與實(shí)現(xiàn)。一站式出國(guó)留學(xué)攻略