OK, we think we found the problem. It wasn't a technical issue, but a logical one.

As I said, we have two applications that authenticate against CAS. In the future, there'll be another one. One of them was thought of as the entry point to the others, and it has nothing but links to the other two apps, enabled or not depending on user permissions. The single sign out is also performed on this entry point app (it has the disconnect link that points to /cas/logout), and the other apps just have an exit button that links to the entry point app and doesn't invalidate sessions.

So, the situation was this: a user (foo) was logging in in the entry point app, and then clicked on one of the links to access one of the other apps (app 1). That user kept working on app 1, but eventually, his session on the entry point app would expire, and so his CAS ticket. If the user clicked on the exit button on app 1, he would be redirected to the entry point app, where he would log in again, this time as another user (bar). Then, when he accessed app 1 again, he would appear as user foo instead of bar, but that's because his session on app 1 as foo never expired and it was never explicitly invalidated.

We've just found the problem and now it's time to think about the solution. Has anyone faced this problem?

Thanks.


El 25/03/2010 17:17, Diego Manilla Suárez escribió:
Hi. I have two applications that authenticate users using CAS. I have configured the single sign out in both of them, via SingleSignOutHttpSessionListener and SingleSignOutFilter. The problem is that the session in one of them seems to be kept alive, so when I sign off and sign in again with a different user, in this app the previous session is still valid, and I'm logged in as the previous user. In fact, to destroy the previous session, I must restart the browser and even remove the cookies.

This happens only in some rare circunstamces, which I haven't been able to reproduce. And, as it is a big security hole, I need to solve this problem ASAP, but I don't know where to start. I have checked the server and clients configurations and everything seems OK.

In this scenario, what could be the cause of this behaviour? Where should I start looking? I don't know if the session invalidation via SingleSignOutFilter is not working, or if CAS is caching the previous authentication, or maybe it's neither.

Thanks in advance**
**

* ***

****

--
You are currently subscribed to [email protected] as: 
[email protected]
To unsubscribe, change settings or access archives, see 
http://www.ja-sig.org/wiki/display/JSG/cas-user

Reply via email to