I'm not sure if you are using machine to mean different physical boxes or JVM's. The containers on OAS are separate JVMs, but all running on the same box under the same OAS server.

From what I can tell, the session of the JVMs is not shared server wide. So when an application authenticates via CAS, and another application is requested within the same browser session, that new app could be in another JVM on the same server. When the single sign out message comes in, it depends which JVM handles that request as to which application(s) will actually get logged out. Only application that have session in the JVM will be logged out.

I'm not sure if I could handle this with a custom single sign out listener and filter or if it's a server setting/tweak. I thought I would ask the list if anyone had encountered this and how they handled it.

Thanks,
Chad

On 4/8/2010 7:57 PM, Scott Battaglia wrote:
The CAS Client API is flexible enough to support single log out
regardless of machine.  However, there is currently no implementation of
single log out that works for multiple machines.  I'm willing to work
with people to add that in, but I haven't had time to do it on my own.

Thanks
Scott


On Thu, Apr 8, 2010 at 4:08 PM, Chad Wittrock <[email protected]
<mailto:[email protected]>> wrote:

    Anyone have experience with Single Sign Out on OAS running multiple
    containers?

    Here's what I'm experiencing:

    Our development OAS server is only running one container for the
    Java apps. That means that every request of that machine grabs from
    that same container. That also means that a user accessing multiple
    apps on that server within the same browser session pulls from the
    same server session. I have a single logout page set up in a common
    shared web application (Acl). I test with a sample CAS application
    (casTest) to log in and view content. When I click the logout link
    in the casTest application it goes to the Acl application which does
    it's local logout thing of invalidating the server session and
    redirecting to CAS logout. Coming back to the casTest application
    after this proves that I am logged out as does the server opmn logs.

    In the same manner, going to the casTest application, logging in,
    navigating around, then going directly to the CAS logout page (by
    typing the logout URL), also logs me out. Thus, Single Sign Out
    works on a single container OAS server!

    Now our test OAS server that has 4 OC4J containers... Following the
    same steps of logging into the casTest application, then clicking
    the Logout link which takes me to the Acl application for logout
    (session invalidation) and redirect to CAS does not yield the same
    results. The reason is that it is a crapshoot if the request to Acl
    will grab the server session from the same container that my casTest
    application requests were being handled by. I am able to verify this
    by watching the logs of each container. So far in all my tests the
    casTest application gets session out of one container and the Acl
    application gets session out of another container. So when Acl
    invalidates the session (for local logout), it invalidates the
    session in that container, but not in the container the casTest
    requests are being handled in. So logout doesn't even work now.

    Now apply all this to Single Sign Out. The Single Sign Out broadcast
    is sent to the java server, the problem is, which container receives
    it? And is that the same container the user has been operating out
    of with their browser session? Again, its a crapshoot. So Single
    Sign Out doesn't work when multiple containers are used.

    I've done some research into invalidating sessions for all
    containers in these situations and am not coming up with anything
    yet. This is why I'm sending this email to see if any of you have
    any ideas to "solve" this.

    Any help/pointers would be greatly appreciated.

    Thanks,
    Chad
    --
    
------------------------------------------------------------------------------
    Chad M Wittrock ([email protected] <mailto:[email protected]>)
    Systems Analyst/Web Apps
    University of Northern Iowa
    (319) 273-7437

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


--
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


--
------------------------------------------------------------------------------
Chad M Wittrock ([email protected])
Systems Analyst/Web Apps
University of Northern Iowa
(319) 273-7437

--
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