CAS單點登錄(SSO)是指用戶只需要登錄一次,就可以在所有CAS系統中無需重新登錄訪問,大大降低了用戶的認證成本。CAS SSO實現的核心就是客戶端的ticket驗證和服務端的ticket驗證。在CAS SSO系統中,每個服務向CAS服務器注冊時會被分配一個service標識,用戶在訪問該服務時,CAS服務器會重定向到一個登錄頁面,用戶輸入用戶名和密碼登錄并且進行驗證,驗證成功后,CAS服務器向服務發放一個ticket,該ticket包含用戶的信息以及服務標識,用戶訪問其它服務時,服務通過CAS服務器驗證ticket,如果驗證成功,CAS服務器就可以對用戶進行授權。
<cas:authentication-manager> <cas:authentication-provider> <cas:jdbc-user-service data-source-ref="dataSource" users-by-username-query=" select username,password,enabled from users where username=?" authorities-by-username-query=" select username,authority from authorities where username =?"/> </cas:authentication-provider> </cas:authentication-manager>
MySQL是CAS SSO中常用的數據庫,它可以存儲用戶的信息和權限。在CAS SSO中,我們需要使用JDBC-user-service進行認證,JDBC用戶服務可以從數據庫中讀取用戶信息,因此,我們需要配置數據源以及查詢語句。在本例中,我們使用了兩個查詢語句,一個用于查詢用戶信息,另一個用于查詢用戶的權限信息。需要注意的是,這兩個查詢語句必須返回用戶名、密碼和授權信息。
上一篇cb6連接mysql
下一篇cd mysql