This is probably because I've missed something in the documentation but working with a local CAS server (purely for testing a pac4j implementation) I can create a service using the json local file approach (purely because I want minimal moving parts) and I can make back channel logout work with the following JSON descriptor for the service:-
{
"@class" : "org.apereo.cas.services.RegexRegisteredService",
"serviceId" : "^http://.*",
"name" : "testJsonFile",
"id" : 103935657744185,
"evaluationOrder" : 10,
"logoutType" : "BACK_CHANNEL",
}
It can be seen in the debug-level logging when I log out (by going to the cas login page and choosing logout) that indeed we are using BACK_CHANNEL
and I see the callback to my application result in the user being logged out. Perfection.
So far so good. However, if in the above descriptor I replace BACK_CHANNEL with FRONT_CHANNEL (and no other changes) and restart (though AIUI that shouldn't be necessary) I would expect now when I do the same thing that rather than a POST to my application, I should see a redirect of the browser and something in the log that says we are now using FRONT_CHANNEL. Instead I see the same behaviour as before, and the same log entry
Is there some additional piece of configuration I need to put in place to enable experimental front channel logout?
The CAS server I'm using is basically the overlay from
https://github.com/apereo/cas-overlay-template (push) with very minor config tweaks. So there's got to be something I'm missing, because I can't find others experiencing this problem.
Please could someone let me know if you see what I'm doing wrong?