日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
SpringBoot+CAS單點(diǎn)登錄之自定義登錄頁(yè)面

 [[411003]]

1.實(shí)現(xiàn)思路

CAS Server 對(duì)于自定義登錄頁(yè)面其實(shí)提供了很好的支持,可以從多個(gè)角度來(lái)實(shí)現(xiàn),松哥分別來(lái)和大家介紹。

創(chuàng)新互聯(lián)專(zhuān)注于企業(yè)網(wǎng)絡(luò)營(yíng)銷(xiāo)推廣、網(wǎng)站重做改版、寧晉網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、html5購(gòu)物商城網(wǎng)站建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性?xún)r(jià)比高,為寧晉等各大城市提供網(wǎng)站開(kāi)發(fā)制作服務(wù)。

CAS Server 上提供的登錄頁(yè)面,早期是用 jsp 寫(xiě)的,我們用的 5.3.2 版本里是用 Thymeleaf 寫(xiě)的,所以現(xiàn)在自定義登錄頁(yè)面也是用 Thymeleaf 來(lái)寫(xiě)。

想要自定義登錄頁(yè)面,我們有兩種不同的方式:

  1. 直接修改源碼,位置在 overlays/org.apereo.cas.cas-server-webapp-tomcat-5.3.14/WEB-INF/classes/templates/casLoginView.html,直接就在它的源碼基礎(chǔ)上改,這個(gè)可以實(shí)現(xiàn)需求,但是一般不推薦。
  2. 把自定義的登錄頁(yè)面當(dāng)成 theme 來(lái)開(kāi)發(fā),然后在配置文件中配置 theme,這種方式就很靈活,而且既可以配置全局主題,也可以配置局部主題。全局主題就是所有的登錄頁(yè)面都使用自定義的登錄頁(yè)面,局部主題則是可以根據(jù)不同的 CAS Client 來(lái)配置,不同的 CAS Client 將看到不同的登錄頁(yè)面。

松哥在這里主要和大家介紹第二種方式。

2.自定義登錄頁(yè)面

首先我們需要提前準(zhǔn)備好自己的登錄頁(yè)面,松哥這里還是使用我本系列前面用過(guò)的登錄頁(yè)面:

這個(gè)大家可以在文末下載頁(yè)面模版,也可以自己找一個(gè)喜歡的登錄頁(yè)面模版,是在找不到,隨便寫(xiě)個(gè)表單也行,只要實(shí)現(xiàn)了自定義的效果即可。

自定義的登錄頁(yè)面準(zhǔn)備好之后,接下來(lái),我們創(chuàng)建一個(gè)新的目錄 src/main/resources/static/themes/mylogin,將自定義頁(yè)面涉及到的靜態(tài)資源文件拷貝進(jìn)去,這里的 themes 目錄下專(zhuān)門(mén)放置各種自定義登錄頁(yè)面的靜態(tài)資源,mylogin 相當(dāng)于是我當(dāng)前使用的主題名稱(chēng):

接下來(lái)創(chuàng)建 src/main/resources/mylogin.properties 文件,將登錄頁(yè)面中的一些 js、css 引用配置進(jìn)去,如下:

 
 
 
 
  1. mylogin.css.style=/themes/mylogin/css/style.css
  2. mylogin.css.fa=/themes/mylogin/css/font-awesome-4.7.0/css/font-awesome.min.css
  3. mylogin.js.jq=/themes/mylogin/js/jquery.min.js
  4. mylogin.js.index=/themes/mylogin/js/index.js

我的自定義登錄頁(yè)面里邊就這四個(gè)引用,如果你有更多的引用,就在這里多配置即可,這里的 key 可以自定義,value 就是靜態(tài)資源的位置。

接下來(lái),創(chuàng)建 src/main/resources/templates/mylogin/casLoginView.html 文件,casLoginView.html 就是你的登錄頁(yè)面,注意文件名不能寫(xiě)錯(cuò)。Thymeleaf 模版默認(rèn)是在 templates 目錄下,所以我們要在 resources 目錄下新建 templates 目錄,templates 目錄下再新建 mylogin 目錄。

casLoginView.html 頁(yè)面內(nèi)容如下:

 
 
 
 
  1.     
  2.     江南一點(diǎn)雨
  3.     
  4.     
  5.     
  6.         統(tǒng)一認(rèn)證中心
  •         
  •             
  •                 用戶(hù)名
  •                 
  •                 
  •             
  •             
  •                 密碼
  •                 
  •                 
  •             
  •             
  •                         
  •                         
  •             
  •                 
  •                     登錄
  •                     
  •                 
  •             
  •         
  •         忘記密碼?
  •     
  •     
  •         
  •             
  •         
  •         江南一點(diǎn)雨-注冊(cè)
  •         
  •             用戶(hù)名
  •             
  •             
  •         
  •         
  •             密碼
  •             
  •             
  •         
  •         
  •             確認(rèn)密碼
  •             
  •             
  •         
  •         
  •             
  •                 注冊(cè)
  •             
  •         
  •     
  • 這就是一個(gè)普通的登錄頁(yè)面,我只是把 js 和 css 的引用修改了下而已,所以這里也就不做過(guò)多介紹。

    OK,如此之后,我們的登錄頁(yè)面就算定義好了,接下來(lái)就是登錄頁(yè)面的引用了。

    登錄頁(yè)面引用,我們有兩種方式:

    第一種是全劇配置,直接在 application.properties 中添加如下配置:

     
     
     
     
    1. cas.theme.defaultThemeName=mylogin

    mylogin 就是我們?cè)谇懊娣磸?fù)出現(xiàn)的目錄,相當(dāng)于是我的主題名。這個(gè)配置完成后,以后不管是直接在 CAS Server 上登錄,還是從 CAS Client 跳轉(zhuǎn)到 CAS Server 上登錄,看到的都是自定義登錄頁(yè)面。

    第二種方式則是局部配置,局部配置針對(duì)某一個(gè) CAS Client 的配置,所以我們可以在 src/main/resources/services/client1-99.json 文件中(復(fù)習(xí)前面文章就知道該文件怎么來(lái)的)添加 theme 配置:

     
     
     
     
    1. {
    2.   "@class": "org.apereo.cas.services.RegexRegisteredService",
    3.   "serviceId": "^(https|http)://.*",
    4.   "name": "client1",
    5.   "id": 99,
    6.   "description": "應(yīng)用1 的定義信息",
    7.   "evaluationOrder": 1,
    8.   "theme": "mylogin"
    9. }

    這樣,以后如果是通過(guò)該 CAS Client 跳轉(zhuǎn)到 CAS Server 上登錄,則會(huì)看到自定義登錄頁(yè)面,如果通過(guò)其他 CAS Client 或者直接就在 CAS Server 上登錄,則看到的還是默認(rèn)登錄頁(yè)面,當(dāng)然我們也可以給其他 CAS Client 再去定義它自己的登錄頁(yè)面。

    3.小結(jié)

    好了,這就是松哥和大家介紹的 CAS 單點(diǎn)登錄自定義登錄頁(yè)面的問(wèn)題,感興趣的小伙伴可以試試~

    本文轉(zhuǎn)載自微信公眾號(hào)「江南一點(diǎn)雨」,可以通過(guò)以下二維碼關(guān)注。轉(zhuǎn)載本文請(qǐng)聯(lián)系江南一點(diǎn)雨公眾號(hào)。


    網(wǎng)頁(yè)標(biāo)題:SpringBoot+CAS單點(diǎn)登錄之自定義登錄頁(yè)面
    文章源于:http://www.dlmjj.cn/article/dpgdesj.html

    其他資訊