Hi team,

It's been a few days since I'm struggling with front SLO.

Implementing front SLO (and back SLO) is pretty complex and has big impacts on 
the source code. So I propose to do it in two pull requests :
- the first one to change the cas-server-core to make it able to handle front 
SLO and still performs the back SLO
- the second one to change the cas-server-webapp to really perform front SLO in 
addition to back SLO.

I just sent a pull request to change the cas-server-core : 
https://github.com/Jasig/cas/pull/248. It should be a good start for this 
dicussion.

The key questions :
1) have one logout manager or put logout logic in services
So far, the services (AbstractWebApplicationService and inherited classes) hold 
their logout logic through the logOutOfService method.
Following the advice given by Marvin, I created one logout manager which has 
the logout logic and clean strongly the services classes. It has many impacts 
as the httpClient is now injected in the LogoutManagerImpl and no more in 
argument extractors and services classes.
I think it improves the general design of logout in the source code.

2) when to find if the service is back or front SLO : at service creation or at 
logout
To be able to perform properly the SLO, the logout manager must know if the 
service requires back or front channel SLO (LogoutType).
This can be computed using the servicesManager bean :
- at service creation (in the argument extractors)
- at logout (in the logout manager) : this is what I implemented. I made this 
choice because I think that the logout type makes more sense at logout.

Any help/feedback will be greatly appreciated here...
Thanks.
Best regards,
Jérôme

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

Reply via email to