CAS-後續開發

上篇文章已經對單點CAS的部署步驟說了一下,同時也說了一些CAS工作流程,可能我自己理解還不夠全面,一些理解的比較深刻寫得好的文章我也附上地址,詳細可以看看他們的理解。
接下來繼續完成項目需求
1.部署CAS(已完成);
2.開發CAS 用戶-應用授權後臺管理系統;
3.CAS-Server登陸進來可以看到用戶有權訪問的系統;
4.點擊client應用進行訪問,需要傳送CAS-Server的用戶名給client;

從第2步開始做起,CAS 用戶-應用授權後臺管理系統就是一個對各client應用進行管理,然後對各用戶進行一個分配,達到授權訪問的作用,這個具體開發就不說了,具體說說怎麼跟CAS結合。

1.CAS登陸界面的改造
登陸頁在工程中的地址爲 cas\WEB-INF\view\jsp\default\ui\casLoginView.jsp,可以打開出來看看,只需要保留原有的邏輯不能修改,其實主要是 form:form 這標籤裏的東西不要變了。如果只是修改樣式,是不會有其他影響的。
如果你不想直接在原文件的基礎上改,你也可以直接修改他的配置文件的頁面位置,修改可以看看這文章,這裏就不重複說了。

2.CAS登陸成功頁修改
登陸成功頁在工程中的地址爲 cas\WEB-INF\view\jsp\default\ui\casGenericSuccess.jsp,我需要在這個頁面顯示登陸用戶擁有的client應用,還有用戶名,比如歡迎某某某這樣的效果。
解決的方法是引入<%@ page import=”org.jasig.cas.authentication.principal.UsernamePasswordCredentials” %>
<% UsernamePasswordCredentials user = (UsernamePasswordCredentials) request.getAttribute(“credentials”);
%>
取用戶名:
<%=user.getUsername() %>
這樣就可以解決了,至於顯示client應用在到數據庫取查詢顯示就行了,然後再在每個client應用的url帶上用戶名參數訪問,client應用就可以拿到用戶名了。

3.CAS註銷跳轉地址
我需要在登陸成功頁加上註銷的按鈕操作,同時各個client應用也需要註銷到CAS-Server登陸頁或者是返回到登陸成功頁去,CAS-Server默認的註銷操作是https://xxx/cas/logout,只需要在後面帶上service參數,參數值是跳轉的地址這樣就可以了,比如https://xxx:8443/cas/logout?service=https://xxx:8443/cas/login,具體實現原理可以看看這篇文章

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章