2012-10-09 35 views
4

同時實現jasig-CAS我遇到了下一個問題: 我想實現註銷。目前它工作正常,但我希望CAS服務器在註銷到請求來自的服務器之後重定向用戶(例如,http://localhost:8080/myApp)。 我試着在安全範圍內增加「服務」,但沒有發生 這裏是我的一塊春季安全上下文:cas自定義註銷

<security:logout logout-url="/logout" 
         logout-success-url="https://localhost:9543/cas-server-webapp-3.4.10/logout?service=http://localhost:8080/myApp" 
         invalidate-session="true" /> 

所有CONFIGS和程序,從this manual.

+0

對不起,誤導您重定向前綴,這是中科院的Webflow的配置。我刪除了這個答案。 –

+0

關於您的問題:它究竟如何不工作?你有沒有試圖把一些簡單的URL放在'logout-success-url'參數中? –

+0

@AleksandrM現在它正常註銷。但它註銷並進入CAS註銷頁面,我想要(重定向)到myApp索引頁面(或其他),而不是留在CAS註銷頁面。 –

回答

6

採取這是否有助於從默認cas-servlet.xml

<bean id="logoutController" class="org.jasig.cas.web.LogoutController" 
    p:centralAuthenticationService-ref="centralAuthenticationService" 
    p:logoutView="casLogoutView" 
    p:warnCookieGenerator-ref="warnCookieGenerator" 
    p:ticketGrantingTicketCookieGenerator-ref="ticketGrantingTicketCookieGenerator" 
    p:servicesManager-ref="servicesManager" 
    p:followServiceRedirects="${cas.logout.followServiceRedirects:false}"/> 

看最後一行${cas.logout.followServiceRedirects:false}

+0

我應該在其中添加此前綴以及此前綴的正確形式是什麼?或我在哪裏可以找到它? –

+0

未刪除並編輯我的答案:) –

+0

在這個bean中沒有這樣的屬性,所以我剛剛添加它並將其設置爲true(因此它啓用重定向)。感謝您的答案並節省了數小時! ;) –

-1

CAS-servlet.xml中

<bean id="logoutController" class="org.jasig.cas.web.LogoutController" 
     p:centralAuthenticationService-ref="centralAuthenticationService" 
     p:logoutView="casLogoutView" 
     p:warnCookieGenerator-ref="warnCookieGenerator" 
     p:ticketGrantingTicketCookieGenerator-ref="ticketGrantingTicketCookieGenerator" 
     p:servicesManager-ref="servicesManager" 
     p:followServiceRedirects="${cas.logout.followServiceRedirects:true}"/> 

在註銷URL

<a href="/cas/logout?service=http://localhost:8080/myApp" title="Log Out">Logout</a> 
+1

應該添加一些解釋 –