Hi all, during the weekend I did a reworking of the CAS module. We have an early adopter on the user mailing list and I try to meet his requirements. There are two CAS authentication filters
- A filter usable for the GeoServer GUI
- A filter receiving tickets generated by the client
Both filters did not work correctly. I decided to remove the GUI elements for 1), this can be done simply in applicationContext.xml. Integrating CAS login into the Geoserver GUI requires GUI modifications concerning the login work flow.
- is working now, I had to do some modifications and changed a lot of test code.
The issues are here
http://jira.codehaus.org/browse/GEOS-5293
http://jira.codehaus.org/browse/GEOS-5294
The git commit is here
https://github.com/mcrmcr/geoserver-1/commit/384034aeb101b977d0d3d76fc9f2336e8a373c6b
All modifications are within the CAS module, no core code is touched. The build itself has a simple test and a complex online test which is not executed if no fixture is found. The build works.
I have no problem to commit on master, but what about the upcoming 2.2.0 ?. At the moment, the GUI allows to create both kinds of CAS filters, but they will not work properly. I am feeling a little bit uncomfortable.
Possible solutions:
a) apply the patch to 2.2.x before releasing 2.2.0
b) remove the configuration possibilities for both CAS filters (commenting out some elements in the applicationContext.xml of the cas module) and commit before releasing 2.2.0. The release 2.2.0 will offer no CAS features at all.
After releasing 2.2.0, backport the fixes to 2.2.x. Version 2.2.1 would offer support for the filter described in 2). The filter described in 1) will be introduced in 2.3.x only.
For our early adopter, I can easily make a sec-cas-2.2-SNAPSHOT.jar for testing.
Opinions ?