cas基本流程功能圖
1.訪問web-one應用
2.是否有ticket?
3.沒有就重定向到登入介面。在client中的web.xml檔案配置
casfilterfilter-name>
edu.yale.its.tp.cas.client.filter.casfilterfilter-class>
edu.yale.its.tp.cas.client.filter.loginurlparam-name>
>
init-param>
filter>
casfilterfilter-name>
/*url-pattern>
4.輸入使用者名稱以及密碼驗證(採用查詢資料庫,並且加密儲存),在server中 的web-inf下的deployerconfigcontext.xml中配置,並且新增mysql和c3p0的jar包
id="authenticationmanager"
class="org.jasig.cas.authentication.policybasedauthenticationmanager">
key-ref="proxyauthenticationhandler"
valu
ref="proxyprincipalresolver" />
key-ref="dbauthhandler"
value-ref="primaryprincipalresolver"/>
map>
constructor-arg>
name="authenticationpolicy">
class="org.jasig.cas.authentication.anyauthenticationpolicy" />
property>
bean>
id="dbauthhandler"
class="org.jasig.cas.adaptors.jdbc.querydatabaseauthenticationhandler"
p:datasource-ref="datasource"
p:sql="select u.`password` from `tb_user` u where u.`username` = ?"
p:passwordencoder-ref="mypasswordencoder" />
id="mypasswordencoder"
class="org.jasig.cas.authentication.handler.mypasswordencoder" />
id="datasource"
class="com.mchange.v2.c3p0.combopooleddatasource">
name="driverclass"
value="com.mysql.jdbc.driver" />
name="jdbcurl"
value="jdbc:mysql:" />
name="user"
value="root" />
name="password"
value="123456" />
bean>
6.客戶端校驗ticket
cas validation filterfilter-name>
org.jasig.cas.client.validation.cas20proxyreceivingticketvalidationfilterfilter-class>
param>
casserverurlprefixparam-name>
>
param>
param>
servernameparam-name>
param-value>
param>
filter>
cas validation filterfilter-name>
/*
go gin框架使用cas單點登入
最近在用gin框架,想路由乙個路徑到cas單點登入發現有個小坑,小小的記錄一下。func 某方法 官方的 如果不用gin框架的話沒有問題,因為是單獨監聽8080埠,然後捕捉到請求就執行handlefunc方法,這裡cas是使用了 gopkg.in cas.v2 這個包,封裝了自己的handle和se...
CAS單點登入
出現這個頁面說明服務端部署成功。cas預設的使用者名稱casuser,密碼 mellon,登陸成功 如果我們不希望用8080埠訪問cas,可以修改埠 1 修改tomcat的埠 開啟tomcat 目錄 conf server.xml 找到下面的配置 將埠8080,改為9000 2 修改cas配置檔案 ...
cas單點登入
開門見山,如下圖為cas登入的序列圖 cas實現單點登入的主要票據有兩個,乙個是tgt,乙個是st。因為是做單點登入的,所以客戶端應該是有多個的,當其中乙個登入之後,在同一瀏覽器中在登陸其他客戶端使用者是感知不到再次登入的,原因是第一次登入成功後cookie記錄乙個tgt,這個cookie在瀏覽器中...