Kerberos基本認(rèn)證過程二
客戶端對(duì)收到的報(bào)文解密,然后將票據(jù)許可票據(jù)以及包含用戶名稱、網(wǎng)絡(luò)地址和時(shí)間的鑒別符發(fā)往票據(jù)授權(quán)服務(wù)器TGS,票據(jù)授權(quán)服務(wù)器TGS對(duì)票據(jù)和鑒別符進(jìn)行解密,驗(yàn)證請(qǐng)求,然后生成請(qǐng)求服務(wù)許可票據(jù),過程下圖所示。
客戶端向TGS發(fā)送TGT、需要訪問的服務(wù)器名、保證消息新鮮的N,以及用會(huì)話密鑰簽名的客戶端認(rèn)證信息,防止數(shù)據(jù)在傳輸過程中被篡改。每次客戶端要訪問某服務(wù)時(shí),必須首先生成一個(gè)新的認(rèn)證信息(鑒別符)。該信息由客戶端生成,包含客戶端名、主機(jī)地址, 以及當(dāng)前客戶端主機(jī)時(shí)間,上述信息采用服務(wù)許可票據(jù)中給出的會(huì)話密鑰加密,其結(jié)構(gòu)為Ac,=( c,a ddr,times tamp)K.,.
服務(wù)許可票據(jù)用于在AS和應(yīng)用服務(wù)器之間安全地傳遞憑據(jù)使用者的身份,同時(shí)也是將AS對(duì)票據(jù)使用者的信任轉(zhuǎn)移給應(yīng)用服務(wù)器。票據(jù)包含服務(wù)器名、客戶端名、客戶端地址、時(shí)間標(biāo)記、生命期以及一個(gè)隨機(jī)的會(huì)話密鑰,這些信息使用接收票據(jù)的服務(wù)器與KDC共享的密鑰進(jìn)行加密,其結(jié)構(gòu)為:T。={s,c,acldr,timestamp,life,K。.)K。。票據(jù)一旦發(fā)放后,可以被其中指定的客戶端向指定的服務(wù)器請(qǐng)求服務(wù)時(shí)多次使用,直到票據(jù)過期為止。
C->TGS:{A。)K..;鼢,{T。.即)K.艫
TGS用K。。驗(yàn)證了TGT后,獲得會(huì)話密鑰和客戶端要訪問的服務(wù)器名,從數(shù)據(jù)庫中獲得服務(wù)器密鑰K。后,隨機(jī)生成客戶端與服務(wù)器之間通信用的會(huì)話密鑰和服務(wù)許可票據(jù)。TGS將客戶與服務(wù)器之間使用的新的會(huì)話密鑰和N用K。,。。加密后與新的服務(wù)許可憑據(jù)一起構(gòu)成消息KRB—TGS—REP,發(fā)送給客戶端。
TGS->C:(K。。,N)K。;鄂,(T_.)K. 第三階段:獲得服務(wù)