專利名稱:基于策略的安全證書(shū)過(guò)濾的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)安全,尤其涉及通信網(wǎng)絡(luò)中的安全通信交換。
背景技術(shù):
傳輸層安全("TLS")和安全套接層("SSL")是常用的安全工具,用于在 客戶端/服務(wù)器網(wǎng)絡(luò)中結(jié)合認(rèn)證和加密。TLS和SSL是設(shè)計(jì)用于因特網(wǎng)環(huán) 境(最初不是設(shè)計(jì)為安全環(huán)境)的網(wǎng)絡(luò)協(xié)議,并操作為T(mén)CP/IP ("傳輸控制協(xié) 議"/"因特網(wǎng)協(xié)議")層之上的協(xié)議層。然后,應(yīng)用代碼駐留在網(wǎng)絡(luò)協(xié)議棧中 的TLS/SSL之上。當(dāng)應(yīng)用(例如瀏覽器)產(chǎn)生要發(fā)往網(wǎng)絡(luò)中另一個(gè)實(shí)體的數(shù) 據(jù)以后,數(shù)據(jù)從應(yīng)用層傳給TLS/SSL層(在TLS/SSL層中執(zhí)行各種安全程 序),然后TLS/SSL層將轉(zhuǎn)換后的數(shù)據(jù)傳給TCP層。在連接的接收端,當(dāng) TCP層收到輸入數(shù)據(jù)以后,它將該數(shù)據(jù)向上傳給TLS/SSL層(在TLS/SSL 層中執(zhí)行程序,將數(shù)據(jù)恢復(fù)為最初形式),然后恢復(fù)后的數(shù)據(jù)被傳給接收應(yīng) 用。
發(fā)明內(nèi)容
本發(fā)明限定用于基于策略的安全證書(shū)的過(guò)濾技術(shù)。在一個(gè)方面,本發(fā) 明優(yōu)選包括以下步驟通過(guò)通信網(wǎng)絡(luò)中的第一實(shí)體,接收第二實(shí)體的安全 證書(shū);以及確定所述第一實(shí)體是否將所述安全證書(shū)看作已獲得認(rèn)證的情況 來(lái)處理。所述確定步驟優(yōu)選包括步驟查找適于解決所述確定的至少一個(gè) 策略規(guī)范;以及評(píng)估所查找到的至少一個(gè)策略規(guī)范中的每一個(gè),直到對(duì)于 怎樣處理所述安4^書(shū)得出結(jié)論為止。
所述查找步驟優(yōu)選地還包括查找涉及該安全證書(shū)的至少一個(gè)策略規(guī)范,該策略規(guī)范可涉及(例如)所述第一實(shí)體和/或所述第二實(shí)體。
所述結(jié)論優(yōu)選表示所述第一實(shí)體將所述安全證書(shū)看作已獲得認(rèn)證或沒(méi)
有獲得認(rèn)證的情況來(lái)處理。實(shí)施例還支持該結(jié)論表示要求用戶的輸入來(lái)
確定第一實(shí)體要怎樣處理所述安全證書(shū),并且在這種情況下,優(yōu)選請(qǐng)求和
使用用戶的輸入。
第一實(shí)體和第二實(shí)體可以是客戶端裝置和服務(wù)器裝置,或者反過(guò)來(lái)。
接收和確定步驟可以在第一實(shí)體與第二實(shí)體之間的協(xié)議握手流期間發(fā)生。 優(yōu)選地,響應(yīng)于確定對(duì)安全證書(shū)認(rèn)證所需的認(rèn)證中心證書(shū)在接收證書(shū)的第 一實(shí)體處無(wú)效時(shí)發(fā)生所述確定步驟。
策略規(guī)范優(yōu)選按照最具體到最不具體的順序評(píng)估??梢栽谠u(píng)估所查找 到的策略規(guī)范的第 一 匹配規(guī)范后得出關(guān)于第 一 實(shí)體要怎樣處理安全逸書(shū)的 結(jié)論;在其它情況下,在評(píng)估所查找到的策略規(guī)范的至少兩個(gè)匹配規(guī)范之 后得出結(jié)論。策略規(guī)范可包括策略規(guī)則,每個(gè)策略規(guī)則包括在評(píng)估中要使 用的至少 一個(gè)條件以及在得出結(jié)論時(shí)要使用的行為。
在評(píng)估所查找到的策略規(guī)范的至少一個(gè)匹配規(guī)范時(shí),得出所述第 一實(shí) 體將所述安全證書(shū)看作已獲得i人證的情況來(lái)處理的結(jié)論,其中所查找到的 策略規(guī)范指定允許所述安全證書(shū)的條件。在評(píng)估所查找到的策略規(guī)范的至 少一個(gè)匹配規(guī)范時(shí),得出所述第一實(shí)體將所述安全證書(shū)看作沒(méi)有獲得認(rèn)證 的情況來(lái)處理的結(jié)論,其中所查找到的策略規(guī)范指定阻擋所述安全證書(shū)的 條件。
評(píng)估優(yōu)選地還包括將所述評(píng)估后的策略規(guī)范中指定的至少 一個(gè)條件的 每個(gè)條件與涉及所述安全汪書(shū)的信息進(jìn)行比較。涉及所述安全證書(shū)的信息 可包括(作為實(shí)例)其發(fā)布者和/或有效期。
應(yīng)用于確定第 一 實(shí)體要怎樣處理安全汪書(shū)的策略規(guī)范可包括涉及在安 全證書(shū)中指定的至少一個(gè)值的、涉及第一實(shí)體的和/或涉及第二實(shí)體的策略 規(guī)范。
所述方法還包括執(zhí)行關(guān)于第一實(shí)體要怎樣處理安全證書(shū)的結(jié)論。 本發(fā)明的實(shí)施例還可以,或者替代性地,作為系統(tǒng)或計(jì)算機(jī)程序產(chǎn)品提供。
上述是發(fā)明內(nèi)容,因此必要地包括細(xì)節(jié)的簡(jiǎn)化、概括和省略;因此, 本領(lǐng)域技術(shù)人員能夠理解,發(fā)明內(nèi)容僅僅是示例性的,而不是要以任何方 式限制。如所附權(quán)利要求書(shū)所限定的本發(fā)明的其它方面、創(chuàng)造性特點(diǎn)、以 及優(yōu)點(diǎn),在下面提供的非限制性的詳細(xì)描述中將變得顯而易見(jiàn)。
下面僅通過(guò)實(shí)例并參照附圖描述本發(fā)明的優(yōu)選實(shí)施例,附圖中
圖1示出可用于本發(fā)明實(shí)施例的數(shù)字證書(shū)的典型格式;
圖2示出在客戶端i人證服務(wù)器情況下的消息流;
圖3示出根據(jù)本發(fā)明的一個(gè)或多個(gè)實(shí)施例的指定為規(guī)則的實(shí)例策略;
圖4示出適于存儲(chǔ)和/或執(zhí)行程序代碼的數(shù)據(jù)處理系統(tǒng);以及
圖5示出可應(yīng)用本發(fā)明一個(gè)或多個(gè)實(shí)施例的典型網(wǎng)絡(luò)環(huán)境。
具體實(shí)施例方式
默認(rèn)地,TLS和SSL采取月良務(wù)器認(rèn)iM莫式,在這種模式下,在協(xié)議的 握手階段,服務(wù)器向客戶端發(fā)送它簽名的數(shù)字證書(shū)。證書(shū)通過(guò)可信任的認(rèn) 證中心("CA")發(fā)布,發(fā)布特定證書(shū)的CA負(fù)責(zé)證書(shū)的數(shù)字簽名,因此,通 過(guò)認(rèn)證(即粉£)證書(shū)上CA的數(shù)字簽名,可以確定證書(shū)的真實(shí)性。因此, 當(dāng)客戶端接收服務(wù)器簽名的數(shù)字證書(shū)時(shí),該客戶端負(fù)責(zé)利用服務(wù)器的證書(shū) 以及通過(guò)認(rèn)證中心鏈與該服務(wù)器相關(guān)聯(lián)的一個(gè)或多個(gè)其它CA證書(shū)來(lái)認(rèn)證 該服務(wù)器。有時(shí)候,除了本身的證書(shū),服務(wù)器還可以向客戶端發(fā)送附加證 書(shū)。如果向客戶端發(fā)送附加證書(shū),則以有序的"證書(shū)列表"來(lái)發(fā)送證書(shū),在 證書(shū)列表中,先^J良務(wù)器的證書(shū),然后是CA證書(shū),CA證書(shū)開(kāi)始M布 服務(wù)器證書(shū)的CA,然后依次上溯到根CA。
客戶端知道的根證書(shū)通常駐留在一般稱為"密鑰環(huán)"的地方。大多數(shù)常 用的數(shù)字證書(shū)滿足對(duì)于公共密鑰基礎(chǔ)設(shè)施("PKI")的X.509規(guī)范中指定的 標(biāo)準(zhǔn)和格式,如請(qǐng)求注解("RFC")2459所述。因此,這些數(shù)字證書(shū)一般稱為"X.509數(shù)字證書(shū)"或者"X.509證書(shū)"。(RFC 2459由互聯(lián)網(wǎng)工程工作小 組或"IETF"公布。)
數(shù)字證書(shū)上的數(shù)字簽名通過(guò)計(jì)算證書(shū)的散列摘要(hashed digest)產(chǎn) 生,包括證書(shū)的7>共密鑰字段。參見(jiàn)圖1,圖1是X.509數(shù)字證書(shū)的典型 格式100。 (X.509數(shù)字證書(shū)格式是基于二進(jìn)制的格式,并且可參照RFC 2459中定義的證書(shū)結(jié)構(gòu)來(lái)解釋。)當(dāng)計(jì)算散列摘要時(shí)利用字段110至字段 170中的值。
下面更詳細(xì)地描述數(shù)字證書(shū)100的這些字段的典型內(nèi)容。版本號(hào)字段 110指定證書(shū)的版本(采用默認(rèn)值的時(shí)候可省略)。序列號(hào)字段120是CA向 它發(fā)布的每個(gè)證書(shū)分配的特定整數(shù)值(因此序列號(hào)字段120與發(fā)布者字段 140可確定唯一證書(shū))。簽名信息字段130表明使用哪一種算法產(chǎn)生數(shù)字簽 名,并指定該算法所使用的參數(shù),發(fā)布者字段140確定發(fā)布該證書(shū)的CA。 字段150指定證書(shū)的有效期,表明CA保證它將保持與證書(shū)狀態(tài)相關(guān)信息 的時(shí)間周期。所述字段150通常包括"非之前"日期和"非之后"日期,其中 "非之前"日期是證書(shū)有效期開(kāi)始的日期,"非之后"日期是證書(shū)有效期結(jié)束 的日期。對(duì)象字段160標(biāo)識(shí)服務(wù)器(或者更一般地,實(shí)體或"對(duì)象"),證書(shū) 為該服務(wù)器而產(chǎn)生。算法字段172標(biāo)識(shí)算法,存儲(chǔ)在對(duì)象公共密鑰字段174 中的公共密鑰使用該算法。因此,向服務(wù)器發(fā)布證書(shū)時(shí),字段174存儲(chǔ)服 務(wù)器的公共密鑰。
利用簽名(即發(fā)布)CA的私有密鑰將對(duì)字段110-170計(jì)算的散列摘要加 密,從而產(chǎn)生數(shù)字簽名值180。(根據(jù)字段130中標(biāo)識(shí)的簽名算法,用于產(chǎn) 生證書(shū)數(shù)字簽名180的散列數(shù)的大小可變。)
miE證書(shū)100時(shí),發(fā)伍器利用簽名CA的公共密鑰將證書(shū)的數(shù)字簽名 字段180解密。然后驗(yàn)證器對(duì)字段110-170重新計(jì)算散列,將其與字段180 的解密值進(jìn)行比較。如果這些值匹配,則證書(shū)獲得認(rèn)證,可以信任。在 TLS/SSL握手期間,對(duì)于鏈中的每個(gè)證書(shū)都要進(jìn)行^L過(guò)程,直到根CA。
當(dāng)為了安全而使用SSL/TLS并且服務(wù)器未發(fā)出證書(shū)列表時(shí),通常客戶 端接收服務(wù)器證書(shū),因此在客戶端密鑰環(huán)上根證書(shū)無(wú)效。然后很多執(zhí)行平臺(tái)向終端用戶發(fā)出消息,要求終端用戶親自檢查服務(wù)器證書(shū),接收或者拒
絕該證書(shū)。終端用戶的響應(yīng)確定TLS/SSL握手是否繼續(xù)。
這種方法有一些問(wèn)題。如果服務(wù)器請(qǐng)求安全連接,則對(duì)于可能接收的 每個(gè)服務(wù)器證書(shū),客戶端裝置需要在它的密鑰環(huán)上具有根證書(shū)。對(duì)于客戶 端來(lái)說(shuō)這是一個(gè)管理負(fù)擔(dān)。此外,很多終端用戶缺乏執(zhí)行服務(wù)器證書(shū)的評(píng) 估的技術(shù)知識(shí)。因此,很多終端用戶不經(jīng)過(guò)任何檢查,簡(jiǎn)單地選擇接收證 書(shū)。結(jié)果,終端用戶可能不知情地接收惡意服務(wù)器證書(shū),這會(huì)導(dǎo)致安全措 施的暴露。此外,TLS/SSL的基本設(shè)計(jì)原理是保證能夠?qū)蛻舳?服務(wù)器會(huì) 話提供認(rèn)證和加密。當(dāng)客戶端的終端用戶任意接受服務(wù)器證書(shū)時(shí),失去認(rèn) 證的意義。會(huì)話仍然被加密,在傳輸期間提供數(shù)據(jù)的機(jī)密性,但是沒(méi)有適 當(dāng)?shù)恼J(rèn)證,客戶端的終端用戶不能確定他或她在服務(wù)器端通信的是什么實(shí) 體。
根據(jù)本發(fā)明的優(yōu)選實(shí)施例,在執(zhí)行環(huán)境的安全處理中建立策略過(guò)濾服 務(wù),從而能夠通過(guò)基本系統(tǒng)呼叫提供策略過(guò)濾。"策略"作為這里使用的術(shù) 語(yǔ),表示促使行為的條件。優(yōu)選實(shí)施例通過(guò)一組規(guī)則(參照?qǐng)D3的實(shí)例更詳 細(xì)地描述)來(lái)指定策略,優(yōu)選由負(fù)責(zé)特定操作環(huán)境中的安全的安全人員(例 如網(wǎng)管)產(chǎn)生規(guī)則。
優(yōu)選實(shí)施例的策略過(guò)濾設(shè)計(jì)為幫助減少存儲(chǔ)每個(gè)證書(shū)的根的局部復(fù)制 的需要,因此客戶端可避免在它的密鑰環(huán)上具有每個(gè)根證書(shū),同時(shí)提供證 書(shū)要求的基本水平,降低安全入侵的可能性。優(yōu)選實(shí)施例還可以向安全人 員提供對(duì)他們負(fù)責(zé)的系統(tǒng)中的行為進(jìn)行更多控制的能力。
這里參照操作環(huán)境中的使用描述優(yōu)選實(shí)施例,操作環(huán)境包括z/OS⑧操 作系統(tǒng)、文件傳輸協(xié)議("FTP")、提供TLS/SSL功能的系統(tǒng)SSL、提供后 端安全的資源訪問(wèn)控制工具("RACF"⑥)、以及用于對(duì)服務(wù)器證書(shū)產(chǎn)生策略 規(guī)則的策略代理("PAgent")部分。("z/OS"和"RACF"是IBM公司的注冊(cè) 商標(biāo))。^使用這個(gè)操作環(huán)境作為示例,而不是限制。
下面參照?qǐng)D2,示出上述情況,作為客戶端實(shí)現(xiàn)客戶端在其密鑰環(huán)上 沒(méi)有需要的根證書(shū)。作為實(shí)例,該圖示通過(guò)SSL協(xié)議利用FTP消息流。如圖2所示,F(xiàn)TP客戶端210向FTP服務(wù)器220發(fā)出連接請(qǐng)求230。然后 交換不同的應(yīng)用流240。然后交換SSL握手流250-270, SSL握手流250-270 包括客戶端問(wèn)候250和服務(wù)器問(wèn)候260,之后服務(wù)器在270發(fā)出它的數(shù)字 簽名證書(shū)。(該實(shí)例中,服務(wù)器在證書(shū)列表中不包括其它證書(shū)。)
在該實(shí)例情況下,在270接收服務(wù)器證書(shū)時(shí),F(xiàn)TP客戶端210實(shí)現(xiàn)了 根CA證書(shū)在客戶端的密鑰環(huán)上無(wú)效。如上所述,如果使用現(xiàn)有技術(shù),終 端用戶一般地負(fù)責(zé)解決這個(gè)問(wèn)題。但是根據(jù)優(yōu)選實(shí)施例,通過(guò)咨詢策略規(guī) 則來(lái)確定怎樣解決這個(gè)問(wèn)題。
安全人員可利用優(yōu)選實(shí)施例的策略代理或"PAgent"來(lái)確定策略規(guī)則, 指定怎樣處理圖2所示類型的未解決輸入服務(wù)器證書(shū),并且PAgent優(yōu)選 將規(guī)則存儲(chǔ)在配置文件或者其它存儲(chǔ)庫(kù)中。(在替代實(shí)施例中,可以以其它 方式產(chǎn)生和存儲(chǔ)規(guī)則,例如利用文本編輯器。此外,本發(fā)明不限于由安全 人員產(chǎn)生規(guī)則。替代實(shí)施例包括由終端用戶指定的策略以及通過(guò)規(guī)劃技術(shù) 產(chǎn)生的策略。)
假定圖2的情況下當(dāng)前有效的策略規(guī)則包括規(guī)則310、 320,如圖3所 示。該實(shí)例中,規(guī)則310是"允許"規(guī)則,指定一組條件,在這組條件下, 即使根CA證書(shū)無(wú)效,也允許服務(wù)器證書(shū)(即好像已經(jīng)通過(guò)驗(yàn)證來(lái)處理)。 規(guī)則320是"阻擋"規(guī)則,指定阻擋證書(shū)(即好像無(wú)效來(lái)處理)的條件。該實(shí) 例中,規(guī)則310指定如果證書(shū)具有有效時(shí)段(也就是說(shuō),當(dāng)前日期/時(shí)間在 證書(shū)的有效期字段150內(nèi),其中當(dāng)前日期/時(shí)間在規(guī)則中指"有效時(shí)段"), 則將允許未知的服務(wù)器證書(shū),并且其發(fā)布者是"公司"。實(shí)例規(guī)則320指定 要阻擋所有證書(shū)。
優(yōu)選實(shí)施例中,以最具體到最不具體的順序評(píng)估和執(zhí)行策略規(guī)則。因 此,如果滿足規(guī)則310的條件,則允許服務(wù)器證書(shū)(優(yōu)選不評(píng)估規(guī)則320)。 有些情況下,根據(jù)這里提供的教導(dǎo)顯而易見(jiàn)的,在遭遇匹配規(guī)則之前可評(píng) 估多個(gè)規(guī)則(也就是說(shuō),滿足指定條件的規(guī)則)。策略規(guī)則可以寫(xiě)入,因此 評(píng)估多個(gè)匹配規(guī)則,以確定特定服務(wù)器證書(shū)是允許還是阻擋,如果需要, 優(yōu)選地操作被評(píng)估的每個(gè)匹配規(guī)則,以進(jìn)一步過(guò)濾證書(shū)。根據(jù)優(yōu)選實(shí)施例,在PAgent部分進(jìn)行規(guī)則的評(píng)估,通過(guò)策略執(zhí)行點(diǎn) "PEP"進(jìn)行策略的執(zhí)行,策略執(zhí)行點(diǎn)駐留在接收服務(wù)器證書(shū)的客戶端(但是 職責(zé)的這樣安排是作為示例,而不是限制)。
如果PAgent在策略配置文件中發(fā)現(xiàn)匹配規(guī)則(或多個(gè)規(guī)則,只要有效), 則優(yōu)選通過(guò)該信息向RACF進(jìn)行安全認(rèn)證工具("SAF")呼叫。響應(yīng)該呼叫, RACF部分優(yōu)選更新它存儲(chǔ)的信息,表示FTP客戶端210允許FTP服務(wù) 器220的服務(wù)器證書(shū),而不管沒(méi)有可用于驗(yàn)汪的根CA證書(shū)。
優(yōu)選實(shí)施例中,通過(guò)對(duì)RACF的SAF呼叫,像系統(tǒng)SSL這樣的部分 對(duì)于安全處理(例如提供數(shù)據(jù)加密和解密)、以及進(jìn)行認(rèn)證相關(guān)的處理(包括 這里公開(kāi)的策略過(guò)濾)起杠桿作用。因此,F(xiàn)TP客戶端210優(yōu)選將所有基于 TLS/SSL的請(qǐng)求傳給系統(tǒng)SSL進(jìn)行處理。在圖2的270處接收服務(wù)器證書(shū) 后,F(xiàn)TP客戶端210優(yōu)選將服務(wù)器證書(shū)和客戶端局部密鑰環(huán)傳給系統(tǒng)SSL。 然后,系統(tǒng)SSL通過(guò)如上所述的以下方式嘗試4lii傳入的服務(wù)器證書(shū),即, 通過(guò)解密發(fā)布者的數(shù)字簽名,重新計(jì)算散列摘要,以及比較這些值。然后, 系統(tǒng)SSL讀取傳入的密鑰環(huán)信息,并對(duì)于根CA證書(shū)鏈中的每個(gè)證書(shū)執(zhí)行 這種數(shù)字簽名處理。(在替代實(shí)施例中,可以以其它方式使密鑰環(huán)對(duì)系統(tǒng) SSL有效,例如將密鑰環(huán)存儲(chǔ)在RACF中,以及在請(qǐng)求時(shí)向系統(tǒng)SSL提供 這些密鑰環(huán)。)
根據(jù)優(yōu)選實(shí)施例,在確定密鑰環(huán)不包括鏈中所有要求的證書(shū)時(shí),系統(tǒng) SSL呼叫RACF觀察要評(píng)估的策略規(guī)則,作為發(fā)汪該證書(shū)的替代方案。根 據(jù)優(yōu)選實(shí)施例,使用服務(wù)器證書(shū)中的一個(gè)或多個(gè)字段來(lái)識(shí)別有效規(guī)則;附 加地或替代地,可使用客戶端的鑒別。例如,策略存儲(chǔ)庫(kù)可包括根據(jù)發(fā)布 的CA邏輯地(或物理地)分組的規(guī)則。其它實(shí)施例中,可評(píng)估所有策略規(guī) 范,直到對(duì)于該特定的服務(wù)器證書(shū)應(yīng)該被允許還是被阻擋得出結(jié)論。
RACF可以以各種方式形成對(duì)系統(tǒng)SSL有效的規(guī)則,包括通過(guò)共享存 儲(chǔ)器或者通過(guò)返回一組規(guī)則作為M,不偏離本發(fā)明的范圍。(此外,在一 個(gè)替代性實(shí)施例中,像RACF這樣的SAF部分可執(zhí)行策略評(píng)估,將允許/ 阻擋結(jié)果返回調(diào)用代碼。)如果系統(tǒng)SSL確定滿足有效"允許"型策略規(guī)則(或多個(gè)規(guī)則,只要有 效),則應(yīng)允許服務(wù)器證書(shū);否則,在優(yōu)選實(shí)施例中,應(yīng)阻擋服務(wù)器證書(shū)。 (如圖3中規(guī)則320所示,匹配"阻擋"型規(guī)則可明確地指定要阻擋證書(shū)的條 件。)系統(tǒng)SSL優(yōu)選將允許/阻擋返回代碼返回到調(diào)用代碼,在圖2的情況 下調(diào)用代碼是FTP客戶端210處的PEP。如果返回代碼是"允許",則FTP 客戶端210繼續(xù)FTP和SSL流(在其它事物中,可包括認(rèn)證客戶端);否則 握手失敗。
可選地,本發(fā)明的一個(gè)或多個(gè)實(shí)施例可允許終端用戶指定是否應(yīng)當(dāng)允 許服務(wù)器證書(shū)。優(yōu)選地,當(dāng)既未發(fā)現(xiàn)匹配"允許"規(guī)則也未發(fā)現(xiàn)匹配"阻擋" 規(guī)則時(shí)使用該選擇。例如,如果規(guī)則320沒(méi)有在規(guī)則存儲(chǔ)庫(kù)中出現(xiàn),并且 規(guī)則310中的M沒(méi)有匹配,則可以詢問(wèn)終端用戶,確定怎樣繼續(xù)。
本發(fā)明的技術(shù)不限于用于希望解決不能!Hit根CA的服務(wù)器證書(shū)的客 戶端,也可以替代性地(或附加地)通過(guò)進(jìn)行客戶端數(shù)字證書(shū)認(rèn)證的服務(wù)器 來(lái)使用。
雖然圖3中示出少量的策略規(guī)則,但是對(duì)于本領(lǐng)域技術(shù)人員來(lái)說(shuō),通 過(guò)這里提供的教導(dǎo),顯然策略存儲(chǔ)庫(kù)可包括大量的策略規(guī)則。此外,雖然 樣本規(guī)則310、 320相對(duì)簡(jiǎn)單,使用"允許"和"阻擋"語(yǔ)法,但是這僅僅是 作為示例實(shí)際應(yīng)用中使用的規(guī)則復(fù)雜性可變,并且可以使用替代性語(yǔ)法。 此外,本發(fā)明的實(shí)施例并不限于指定為規(guī)則的策略可以使用其它格式而 不偏離本發(fā)明的范圍。
對(duì)于這里所述的可采用替代物組件,不偏離本發(fā)明的范圍。用于SAF 功能的部分包括計(jì)算^i合的CA-ACF2 。 ("CA-ACF2"是計(jì)算機(jī)聯(lián)合國(guó) 際公司的注冊(cè)商標(biāo))。用于PAgent功能的替代物包括任意基于策略的邏輯 實(shí)現(xiàn)。用于PEP的替代物包括在解決怎樣處理不能mi才艮CA的服務(wù)器證 書(shū)之后適于允許或阻擋通信的任何功能。系統(tǒng)SSL的替代物包括用于提供 認(rèn)證相關(guān)處理(并且,可選為加密和/或解密)的其它機(jī)制。密鑰環(huán)的替代物 包括密鑰管理數(shù)據(jù)結(jié)構(gòu)的其它類型。
如同本領(lǐng)域技術(shù)人員所能夠理解的,本發(fā)明的實(shí)施例可提供作為(例如)方法、系統(tǒng)、和/或計(jì)算機(jī)程序產(chǎn)品。本發(fā)明可采用全部硬件實(shí)施、全部軟 件實(shí)施、或者既包括硬件又包括軟件成分實(shí)施的形式。在優(yōu)選實(shí)施例中, 本發(fā)明實(shí)施為軟件,包括(但不限于)固件、駐留軟件、微代碼等等。此夕卜, 本發(fā)明可采用計(jì)算機(jī)程序產(chǎn)品的形式,在一個(gè)或多個(gè)計(jì)算機(jī)可用的存儲(chǔ)介
質(zhì)(包括但不限于磁盤(pán)存儲(chǔ)器、CD-ROM、光存儲(chǔ)器等等)上實(shí)現(xiàn),存儲(chǔ) 介質(zhì)中實(shí)現(xiàn)計(jì)算機(jī)可用的程序代碼,計(jì)算機(jī)程序產(chǎn)品可由計(jì)算機(jī)或任意指 令執(zhí)行系統(tǒng)使用,或者與計(jì)算機(jī)或任意指令執(zhí)行系統(tǒng)相結(jié)合。為了描述的 目的,計(jì)算機(jī)可用或者計(jì)算機(jī)可讀的介質(zhì)可以是能夠包含、存儲(chǔ)、通信、
傳播或者傳輸程序的任意設(shè)備,程序由指令執(zhí)行系統(tǒng)、設(shè)備或裝置使用, 或者與指令執(zhí)行系統(tǒng)、設(shè)備或裝置相結(jié)合。
介質(zhì)可以是電、磁、光、電磁、紅外、或半導(dǎo)體系統(tǒng)(或設(shè)備或裝置) 或者傳播介質(zhì)。計(jì)算機(jī)可讀介質(zhì)的實(shí)例包括半導(dǎo)體存儲(chǔ)器或固態(tài)存儲(chǔ)器、 磁帶、移動(dòng)計(jì)算;^/Ut盤(pán)、隨機(jī)訪問(wèn)存儲(chǔ)器("RAM")、只讀存儲(chǔ)器("ROM")、 剛性磁盤(pán)、以及光盤(pán)。光盤(pán)的當(dāng)前實(shí)例包括壓縮盤(pán)只讀存儲(chǔ)器 ("CD-ROM")、壓縮盤(pán)讀/寫(xiě)存儲(chǔ)器("CD-R/M")、以及DVD。
下面參照?qǐng)D4,數(shù)據(jù)處理系統(tǒng)400適于存儲(chǔ)和/或執(zhí)行程序代碼,包括 至少一個(gè)處理器412,處理器412直接或通過(guò)系統(tǒng)總線414間接連接存儲(chǔ) 器元件。存儲(chǔ)器元件可包括局部存儲(chǔ)器428、海量存儲(chǔ)器430、以及緩存(未 示出),局部存儲(chǔ)器428在實(shí)際執(zhí)行程序代碼時(shí)采用,緩存提供至少部分程 序代碼的臨時(shí)存儲(chǔ),以減少執(zhí)行期間必須從體存儲(chǔ)器取回代碼的次數(shù)。
輸入/輸出("I/0")裝置(包括但不限于鍵盤(pán)418、顯示器424、定點(diǎn)裝置 420、其它界面裝置422等等)可直接或通過(guò)中間I/O控制器或適配器(416, 426)間接地連接到系統(tǒng)。
網(wǎng)絡(luò)適配器也可以連接系統(tǒng),從而使數(shù)據(jù)處理系統(tǒng)能夠通過(guò)中間私有 網(wǎng)絡(luò)或公共網(wǎng)絡(luò)(一般地如432所示),連接其它數(shù)據(jù)處理系統(tǒng)或者遠(yuǎn)程打 印機(jī)或者存儲(chǔ)裝置。調(diào)制解調(diào)器、線纜調(diào)制解調(diào)器附件、無(wú)線適配器、以 及以太網(wǎng)卡僅僅是網(wǎng)絡(luò)適配器當(dāng)前可用類型的一部分。
圖5示出可實(shí)施本發(fā)明的數(shù)據(jù)處理網(wǎng)絡(luò)環(huán)境500。數(shù)據(jù)處理網(wǎng)絡(luò)環(huán)境500可包括多個(gè)單獨(dú)網(wǎng)絡(luò),例如無(wú)線網(wǎng)絡(luò)542和網(wǎng)絡(luò)544。多個(gè)無(wú)線裝置 510可通過(guò)無(wú)線網(wǎng)絡(luò)542通信,多個(gè)有線裝置,附圖中示出為工作站511(作 為示例),可通過(guò)網(wǎng)絡(luò)544通信。此外,本領(lǐng)域4支術(shù)人員能夠理解,可包括 一個(gè)或多個(gè)局域網(wǎng)("LAN")(未示出),其中LAN可包括多個(gè)裝置與主處理 器相連接。
仍然參照?qǐng)D5,網(wǎng)絡(luò)542和網(wǎng)絡(luò)544還可以包括大型計(jì)算機(jī)或服務(wù)器, 例如網(wǎng)關(guān)計(jì)算機(jī)546或應(yīng)用服務(wù)器547(可訪問(wèn)數(shù)據(jù)存儲(chǔ)庫(kù)548)。網(wǎng)關(guān)計(jì)算 機(jī)546用作i^每個(gè)網(wǎng)絡(luò)(例如網(wǎng)絡(luò)544)的點(diǎn) 網(wǎng)關(guān)546優(yōu)選通過(guò)通信鏈路 550a連接另一網(wǎng)絡(luò)542。網(wǎng)關(guān)546也可以利用通信鏈路550b、 550c直接連 接一個(gè)或多個(gè)工作站511,和/或間接連接這些裝置。網(wǎng)關(guān)計(jì)算機(jī)546可利 用從IBM購(gòu)買的企業(yè)系統(tǒng)結(jié)構(gòu)/37()TM、企業(yè)系統(tǒng)結(jié)構(gòu)/390@計(jì)算機(jī)等等實(shí) 現(xiàn)。根據(jù)應(yīng)用可采用中型計(jì)算機(jī),例如應(yīng)用系統(tǒng)/4007(又稱為AS/4007)。(" 企業(yè)系統(tǒng)結(jié)構(gòu)/370"是IBM的商標(biāo);"企業(yè)系統(tǒng)結(jié)構(gòu)/3卯"、"應(yīng)用系統(tǒng)/400" 以及"AS/400"是IBM的注冊(cè)商標(biāo)。)
網(wǎng)關(guān)計(jì)算機(jī)546也可以通過(guò)549連接存儲(chǔ)裝置(例如數(shù)據(jù)存儲(chǔ)庫(kù)548)。
本領(lǐng)域技術(shù)人員能夠理解,網(wǎng)關(guān)計(jì)算機(jī)546可位于距網(wǎng)絡(luò)542較遠(yuǎn)的 幾何距離,類似地,無(wú)線裝置510和/或工作站511可以分別位于距網(wǎng)絡(luò)542、 544 —定的距離。例如,網(wǎng)絡(luò)542可位于加州,而網(wǎng)關(guān)546可位于德州, 一個(gè)或多個(gè)工作站511可位于佛羅里達(dá)。無(wú)線裝置510可利用網(wǎng)絡(luò)協(xié)議(例 如傳輸控制協(xié)議/因特網(wǎng)協(xié)議("TCP/IP")),例如通過(guò)很多替代性連接介質(zhì) (例如蜂窩電話、射頻網(wǎng)絡(luò)、衛(wèi)星網(wǎng)絡(luò)等等),連接無(wú)線網(wǎng)絡(luò)542。無(wú)線網(wǎng)絡(luò) 542優(yōu)選利用網(wǎng)絡(luò)連接550a(例如TCP或者用戶數(shù)據(jù)報(bào)協(xié)議("UDP")),通 過(guò)IP、 X.25、幀中繼、整體復(fù)位數(shù)字網(wǎng)絡(luò)("ISDN")、公共交換電話網(wǎng)絡(luò) ("PSDN")等等,連接網(wǎng)關(guān)546。工作站511可利用撥號(hào)連接550b或550c 直接連接網(wǎng)關(guān)546。此外,通過(guò)與圖5所示類似的方式,無(wú)線網(wǎng)絡(luò)542和 網(wǎng)絡(luò)544可連接一個(gè)或多個(gè)其它網(wǎng)絡(luò)(未示出)。
參照根據(jù)本發(fā)明實(shí)施例的流程圖和/或方框圖描述了本發(fā)明。應(yīng)當(dāng)理 解,流程圖和/或方框圖的每個(gè)流程和/或方框、以及流程圖和/或方框圖的流程和/或方框的組合,都能夠通過(guò)計(jì)算機(jī)程序指令實(shí)現(xiàn)。這些計(jì)算機(jī)程序 指令可以提供給通用計(jì)算機(jī)和專用計(jì)算機(jī)的處理器、內(nèi)嵌處理器、或者其 它可編程數(shù)據(jù)處理設(shè)備,以生產(chǎn)機(jī)器,因此,通過(guò)計(jì)算機(jī)的處理器或者其 它可編程數(shù)據(jù)處理設(shè)備執(zhí)行的指令產(chǎn)生手段,以實(shí)現(xiàn)流程圖的流程或多個(gè) 流程和/或方框圖的方框或多個(gè)方框中指定的功能。
這些計(jì)算機(jī)程序指令也可以存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)器中,計(jì)算機(jī)可讀
存儲(chǔ)器可指引計(jì)算機(jī)或其它可編程數(shù)據(jù)處理設(shè)備以特定方式工作,因此, 存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)器中的指令產(chǎn)生包括指令裝置的制造品,所述指令 裝置用于實(shí)現(xiàn)流程圖的流程或多個(gè)流程和/或方框圖的方框或多個(gè)方框中 指定的功能。
計(jì)算機(jī)程序指令也可以載入計(jì)算機(jī)或者其它可編程數(shù)據(jù)處理設(shè)備,導(dǎo) 致在計(jì)算機(jī)或其它可編程設(shè)備上進(jìn)行一系列操作步驟,產(chǎn)生計(jì)算機(jī)實(shí)施過(guò) 程,因此,計(jì)算機(jī)或其它可編程設(shè)備上執(zhí)行的指令提供步驟,實(shí)現(xiàn)流程圖 的流程或多個(gè)流程和/或方框圖的方框或多個(gè)方框中指定的功能。
雖然描述了本發(fā)明的若干個(gè)實(shí)施例,但是本領(lǐng)域技術(shù)人員 一旦掌握了 基本的創(chuàng)造性概念,就可以想到這些實(shí)施例的附加變化和修改。因此,希 望將所附權(quán)利要求書(shū)解釋為包括落入本發(fā)明精神和范圍中的所有這樣的變 化和〗務(wù)改。
權(quán)利要求
1.一種計(jì)算機(jī)實(shí)現(xiàn)的基于策略的安全證書(shū)過(guò)濾方法,包括以下步驟通過(guò)通信網(wǎng)絡(luò)中的第一實(shí)體,接收第二實(shí)體的安全證書(shū);以及確定所述第一實(shí)體是否將所述安全證書(shū)看作已獲得認(rèn)證的情況來(lái)處理,包括以下步驟查找適于解決所述確定的至少一個(gè)策略規(guī)范;以及評(píng)估所查找到的至少一個(gè)策略規(guī)范中的每一個(gè),直到對(duì)于怎樣處理所述安全證書(shū)得出結(jié)論為止。
2. 如權(quán)利要求l所述的方法,其中,所述結(jié)論表示所述第一實(shí)體將所 述安全證書(shū)看作已獲得認(rèn)證的情況來(lái)處理。
3. 如權(quán)利要求l所述的方法,其中,所述結(jié)論表示所述第一實(shí)體將所 述安全證書(shū)看作沒(méi)有獲得認(rèn)證的情況來(lái)處理。
4. 如權(quán)利要求l所述的方法,其中,所述結(jié)論表示要求用戶的輸入來(lái) 確定所述第一實(shí)體要怎樣處理所述安全證書(shū),并且還包括以下步驟從所述用戶要求所述輸入;以及才艮據(jù)所述用戶的輸入,將所述安全逸書(shū)看作已獲得驗(yàn)證的情況或者沒(méi) 有獲得發(fā)汪的情況來(lái)處理。
5. 如權(quán)利要求l所述的方法,其中,所述第一實(shí)體是客戶端裝置,所 述第二實(shí)體^J艮務(wù)器裝置。
6. 如權(quán)利要求l所述的方法,其中,所述第一實(shí)體AJ3良務(wù)器裝置,所 述第二實(shí)體是客戶端裝置。
7. 如權(quán)利要求l所述的方法,其中,所述接收和確定步驟在所述第一 實(shí)體與所述第二實(shí)體之間的協(xié)議握手流期間發(fā)生。
8. 如權(quán)利要求l所述的方法,其中,響應(yīng)于確定對(duì)所述安全證書(shū)認(rèn)證 所需要的認(rèn)證中心證書(shū)在所述第一實(shí)體無(wú)效,發(fā)生所述確定步驟。
9. 如權(quán)利要求l所述的方法,其中,所述評(píng)估步驟在評(píng)估所查找到的 策略規(guī)范的第 一 匹配規(guī)范之后得出結(jié)論。
10. 如權(quán)利要求1所述的方法,其中,所述評(píng)估步驟在評(píng)估所查找到的策略規(guī)范的至少兩個(gè)匹配規(guī)范之后得出結(jié)論。
11. 如權(quán)利要求1所述的方法,其中,所述策略規(guī)范按照最具體到最 不具體的順序來(lái)評(píng)估。
12. 如權(quán)利要求1所述的方法,其中,所述策略規(guī)范包括策略規(guī)則, 每個(gè)策略規(guī)則包括要在所述評(píng)估中使用的至少一個(gè)條件以及要在得出所述 結(jié)論中使用的行為。
13. 如;f又利要求2所述的方法,其中,在評(píng)估所查找到的策略規(guī)范的 至少一個(gè)匹配規(guī)范時(shí),得出所述第 一實(shí)體將所述安全汪書(shū)看作已獲得認(rèn)證的情況來(lái)處理的結(jié)論,其中所查找到的策略規(guī)范指定允許所述安4Si書(shū)的 條件。
14. 如權(quán)利要求3所述的方法,其中,在評(píng)估所查找到的策略規(guī)范的 至少一個(gè)匹配規(guī)范時(shí),得出所述第 一實(shí)體將所述安全證書(shū)看作沒(méi)有獲得認(rèn)證的情況來(lái)處理的結(jié)論,其中所查找到的策略規(guī)范指定阻擋所述安全證書(shū) 的條件。
15. 如權(quán)利要求1所述的方法,其中,所述評(píng)估步驟還包括將所述評(píng) 估后的策略規(guī)范中指定的至少一個(gè)條件的每個(gè)條件與涉及所述安全證書(shū)的 信息進(jìn)行比較。
16. 如權(quán)利要求15所述的方法,其中,所述涉及所述安全證書(shū)的信息 包括其發(fā)布者。
17. 如權(quán)利要求15所述的方法,其中,所述涉及所述安全證書(shū)的信息 包括其有效期。
18. 如權(quán)利要求l所述的方法,其中,所述查找步驟還包括以下步驟: 查找涉及在所述安全證書(shū)中指定的至少一個(gè)值的至少一個(gè)策略規(guī)范。
19. 如權(quán)利要求l所述的方法,其中,所述查找步驟還包括以下步驟: 查找涉及所述第 一 實(shí)體的至少 一個(gè)策略規(guī)范。
20. 如權(quán)利要求l所述的方法,其中,所述查找步驟還包括以下步驟: 查找涉及所述第二實(shí)體的至少一個(gè)策略規(guī)范。
21. 如權(quán)利要求1所述的方法,還包括以下步驟執(zhí)行關(guān)于所述第一 實(shí)體將怎樣處理所述安全證書(shū)的結(jié)論。
22. —種用于基于策略的安全江書(shū)過(guò)濾的系統(tǒng),包括 第一實(shí)體,與通信網(wǎng)絡(luò)中的第二實(shí)體通信連接;策略存儲(chǔ)庫(kù),至少臨時(shí)地存儲(chǔ)涉及在所述第一實(shí)體與所述第二實(shí)體之 間的安全通信的至少 一個(gè)策略規(guī)范;所述第二實(shí)體的安全證書(shū),通過(guò)所述通信網(wǎng)絡(luò)的通信,由所述第一實(shí) 體從所述第二實(shí)體接收;裝置,用于響應(yīng)于確定對(duì)所接收的安全證書(shū)用密碼認(rèn)證所需要的至少 一個(gè)安全證書(shū)沒(méi)有被所述第一實(shí)體局部存儲(chǔ),在所述策略存儲(chǔ)庫(kù)中查找適 于解決怎樣處理所接收的安全汪書(shū)的所存儲(chǔ)的策略規(guī)范中的至少一個(gè);裝置,用于評(píng)估所查找到的至少一個(gè)策略規(guī)范中的每一個(gè),直到對(duì)于 是否將所述安全汪書(shū)看作已獲得認(rèn)證的情況來(lái)處理得出結(jié)論為止;以及用于執(zhí)行所述結(jié)論的裝置。
23. 如權(quán)利要求22所述的系統(tǒng),其中,用于執(zhí)行的裝置還包括裝置, 如果用于評(píng)估的裝置得出的結(jié)論表示所接收的安全證書(shū)已獲得認(rèn)證,則允 許在所述第一實(shí)體與所述第二實(shí)體之間的安全通信繼續(xù)。
24. 如權(quán)利要求22所述的系統(tǒng),其中,用于執(zhí)行的裝置還包括裝置, 如果用于評(píng)估的裝置得出的結(jié)論表示所接收的安全證書(shū)沒(méi)有獲得認(rèn)證,則 阻擋在所述第一實(shí)體與所述第二實(shí)體之間的其它安全通信。
25. —種基于策略的安全證書(shū)過(guò)濾的計(jì)算機(jī)程序產(chǎn)品,所述計(jì)算機(jī)程 序產(chǎn)品在一個(gè)或多個(gè)計(jì)算機(jī)可用的介質(zhì)上實(shí)現(xiàn),并且包括計(jì)算機(jī)可讀程序 代碼,當(dāng)在計(jì)算機(jī)上執(zhí)行所述計(jì)算機(jī)可讀程序代碼時(shí),導(dǎo)致所述計(jì)算機(jī)執(zhí) 行以下步驟確定所述第 一 實(shí)體是否將由所述第 一 實(shí)體從所述第二實(shí)體接收的安全 證書(shū)看作已獲得i人證的情況來(lái)處理,包括以下步驟查找適于解決所述確定的至少一個(gè)策略規(guī)范;以及 評(píng)估所查找到的至少一個(gè)策略規(guī)范中的每一個(gè),直到對(duì)于所述第一實(shí)體怎樣處理所述安全證書(shū)得出結(jié)論為止;以及 執(zhí)行所述結(jié)論。
26.如^5L利要求25所述的計(jì)算機(jī)程序產(chǎn)品,其中,響應(yīng)于確定對(duì)所述 安全證書(shū)認(rèn)證所需要的認(rèn)證中心證書(shū)在所述第一實(shí)體無(wú)效,執(zhí)行導(dǎo)致所述 計(jì)算機(jī)確定所述第一實(shí)體是否將所述安全證書(shū)看作已獲得認(rèn)證的情況來(lái)處 理的所述計(jì)算機(jī)可讀程序代碼。
全文摘要
在用于解決怎樣處理通信實(shí)體的數(shù)字安全證書(shū)的執(zhí)行環(huán)境的安全處理中建立策略過(guò)濾服務(wù),不需要通過(guò)認(rèn)證中心(“CA”)鏈與實(shí)體相關(guān)聯(lián)的根證書(shū)的局部復(fù)制。利用表示用于證書(shū)過(guò)濾條件的一組規(guī)則(或其它策略格式)來(lái)指定策略。優(yōu)選地,在確定需要的根CA證書(shū)無(wú)效時(shí),在握手過(guò)程中調(diào)用該過(guò)濾。在一個(gè)方案中,策略使用指定允許證書(shū)(即看作以獲得驗(yàn)證來(lái)處理)的條件的規(guī)則以及指定阻擋證書(shū)(即看作沒(méi)有獲得驗(yàn)證來(lái)處理)的條件的其它規(guī)則。優(yōu)選地,按照最具體到最不具體的順序評(píng)估和執(zhí)行策略規(guī)則。
文檔編號(hào)H04L29/06GK101411159SQ200780010949
公開(kāi)日2009年4月15日 申請(qǐng)日期2007年3月28日 優(yōu)先權(quán)日2006年4月17日
發(fā)明者B·馬薩科斯基, L·H·小奧弗畢, R·F·布拉布森 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司