對(duì)我校教師賬戶實(shí)現(xiàn)CAS的改造探索

業(yè)務(wù)系統(tǒng)的增多導(dǎo)致用戶信息穆律、用戶登錄不便于統(tǒng)一管理, 基于此我們開始對(duì)單點(diǎn)登錄SSO和統(tǒng)一身份認(rèn)證服務(wù)CAS進(jìn)行探索. 當(dāng)前我們的科研管理系統(tǒng)已經(jīng)開發(fā)的差不多了俗批,由于每次開發(fā)學(xué)校的項(xiàng)目都需要導(dǎo)入教師信息,多個(gè)系統(tǒng)就造成了用戶數(shù)據(jù)難統(tǒng)一管理末贾,多個(gè)系統(tǒng)之間的用戶賬號(hào)密碼難管理蒜鸡,于是這幾天我們?cè)诳蒲邢到y(tǒng)開發(fā)基礎(chǔ)上提出了第二方案婶芭,使用統(tǒng)一身份認(rèn)證服務(wù)CAS對(duì)我校教師賬戶信息進(jìn)行管理皮服。

說實(shí)話楞艾,我們可以系統(tǒng)已經(jīng)開發(fā)近九成,系統(tǒng)業(yè)務(wù)早已成型龄广,如果實(shí)行這個(gè)方案需要對(duì)后端進(jìn)行一部分重構(gòu)硫眯。后端是基于eladmin簡(jiǎn)化過的框架,雖說這樣動(dòng)后端原框架中的也是比較費(fèi)力的择同,首先需要對(duì)框架有一定了解两入,其次對(duì)業(yè)務(wù)熟悉,會(huì)涉及到mybatispuls一對(duì)多奠衔,一對(duì)一的結(jié)構(gòu)谆刨,解耦用戶信息緩存塘娶,修改安全框架归斤。當(dāng)時(shí)我們甚至懷疑自己是否能完成這個(gè)任務(wù),在小桑的學(xué)長(zhǎng)的指導(dǎo)和參與改進(jìn)的幾個(gè)人的討論交流下刁岸,我們最終決定嘗試嘗試脏里。

我相信我們最終肯定能做出來,以后能服務(wù)更多的項(xiàng)目虹曙,我對(duì)大家有信心迫横。

差點(diǎn)誤入歧途。起初我們本想走微信公眾/小程序那套認(rèn)證流程酝碳,在科研管理系統(tǒng)后端通過appId和secret來認(rèn)證訪問我們的系統(tǒng)矾踱,但最后發(fā)現(xiàn)著并不是CAS的認(rèn)證流程,CAS只完成用戶賬戶認(rèn)證疏哗,因?yàn)橹皼]有接觸過SSO和CAS呛讲,我們這可的業(yè)務(wù)也不僅僅涉及身份驗(yàn)證,導(dǎo)致我們的登錄認(rèn)證流程老是乖乖的返奉,成了個(gè)四不象贝搁,最終在前幾天中午我們跟小桑學(xué)長(zhǎng)的一次討論中撥開了縈繞大腦的迷霧。

我們終于搞清楚了CAS認(rèn)證原理芽偏,簡(jiǎn)單白話說一下雷逆。首先它在功能上它只完成用戶身份認(rèn)證,驗(yàn)證通過給票據(jù)污尉,在業(yè)務(wù)系統(tǒng)通過票據(jù)換取用戶信息膀哲。為什么CAS能實(shí)現(xiàn)多個(gè)業(yè)務(wù)系統(tǒng)統(tǒng)一登錄呢往产?首先它有個(gè)公共的登錄頁(yè)面(還有其他的不止這些),這個(gè)頁(yè)面屬于CAS某宪,當(dāng)我們通過域名訪問該頁(yè)面捂齐,通過賬號(hào)密碼認(rèn)證通過CAS會(huì)在二級(jí)域名下的cookie保存用戶登錄的證明(類似token但不是,我們稱它TGT缩抡,用它可以到CAS換取業(yè)務(wù)票據(jù)ST)奠宜,同時(shí)也會(huì)帶著ST(Service Ticket,用來?yè)Q取用戶信息瞻想,一般只用一次)重定向到所要登錄的業(yè)務(wù)系統(tǒng)压真,該系統(tǒng)拿到ST會(huì)向CAS換用戶信息(到這里CAS的任務(wù)就完成了),之后拿到用戶信息與自己的數(shù)據(jù)庫(kù)比對(duì)無誤就讓用戶登錄蘑险,此時(shí)該業(yè)務(wù)系統(tǒng)會(huì)給登錄創(chuàng)建一個(gè)token并保存在業(yè)務(wù)系統(tǒng)域名下滴肿,實(shí)現(xiàn)下次免登,從中我們可以看出CAS做的事很簡(jiǎn)單佃迄,就是驗(yàn)證賬戶和返回賬戶信息泼差,之后就與CAS無關(guān)了。

未完待續(xù)呵俏。

記于 2020-12-5 周六堆缘,夜已深,倦鳥普碎。

文章同步更新到我的個(gè)人博客:https://elltor.com/

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末吼肥,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子麻车,更是在濱河造成了極大的恐慌缀皱,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,372評(píng)論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件动猬,死亡現(xiàn)場(chǎng)離奇詭異啤斗,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)赁咙,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門钮莲,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人序目,你說我怎么就攤上這事臂痕。” “怎么了猿涨?”我有些...
    開封第一講書人閱讀 162,415評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵握童,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我叛赚,道長(zhǎng)澡绩,這世上最難降的妖魔是什么稽揭? 我笑而不...
    開封第一講書人閱讀 58,157評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮肥卡,結(jié)果婚禮上溪掀,老公的妹妹穿的比我還像新娘。我一直安慰自己步鉴,他們只是感情好揪胃,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,171評(píng)論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著氛琢,像睡著了一般喊递。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上阳似,一...
    開封第一講書人閱讀 51,125評(píng)論 1 297
  • 那天骚勘,我揣著相機(jī)與錄音,去河邊找鬼撮奏。 笑死俏讹,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的畜吊。 我是一名探鬼主播泽疆,決...
    沈念sama閱讀 40,028評(píng)論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼定拟!你這毒婦竟也來了于微?” 一聲冷哼從身側(cè)響起逗嫡,我...
    開封第一講書人閱讀 38,887評(píng)論 0 274
  • 序言:老撾萬榮一對(duì)情侶失蹤青自,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后驱证,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體延窜,經(jīng)...
    沈念sama閱讀 45,310評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,533評(píng)論 2 332
  • 正文 我和宋清朗相戀三年抹锄,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了逆瑞。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,690評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡伙单,死狀恐怖获高,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情吻育,我是刑警寧澤念秧,帶...
    沈念sama閱讀 35,411評(píng)論 5 343
  • 正文 年R本政府宣布,位于F島的核電站布疼,受9級(jí)特大地震影響摊趾,放射性物質(zhì)發(fā)生泄漏币狠。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,004評(píng)論 3 325
  • 文/蒙蒙 一砾层、第九天 我趴在偏房一處隱蔽的房頂上張望漩绵。 院中可真熱鬧,春花似錦肛炮、人聲如沸止吐。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至蕴忆,卻和暖如春悲幅,著一層夾襖步出監(jiān)牢的瞬間汰具,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,812評(píng)論 1 268
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留杰妓,地道東北人巷挥。 一個(gè)月前我還...
    沈念sama閱讀 47,693評(píng)論 2 368
  • 正文 我出身青樓倍宾,卻偏偏與公主長(zhǎng)得像胜嗓,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子辞州,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,577評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容