Hi Scott, Vivek Thanks for the answer. I have filled a JIRA enhancement request ( https://issues.jasig.org/browse/CASC-144). >From here, I understand the only option for us is to redevelop the same thing that Vivek describes.
- Vivek, how have you extended the AuthenticationFilter class ? which method have you overriden ? is it possible for you to share that code ? - Since in our case we are sure the CAS will always be deployed in the same server as our app, couldn't we use the host header as the server name ? this would remove a parameter and ease the deployment of our applications; do you see any problem with this solution ? Cheers Thomas On Sun, Mar 27, 2011 at 12:33, Vivek Singh CHAUHAN <vivekchauhan.vc@ gmail.com> wrote: > Hi Thomas, Scott, > > We have implemented the same functionality, where a single CAS client is > able to handle requests from multiple URLs for same application. Moreover we > can also configure multiple (or same) CAS servers for each URL. See the > attached pictorial representation of the same. > > To implement this functionality, we just modified the way CAS client > configurations are loaded. Instead of init params, we are keeping all the > configurations in the properties file and load all the configurations on the > application start up, so that we don’t have to load it again and again. > > In the properties file we define configurations per URL (see example > configuration below), and whenever a request is received, we retrieve the > incoming URL from request and use the settings defined for that URL. For > passing the configurations to CAS Client , we have extended the > AuthenticationFilter. > > EXTERNAL-APP.abc.com.LOGIN.URL=https://external-cas.abc.com/cas/login > EXTERNAL-APP.abc.com.LOGOUT.URL=https://external-cas.abc.com/cas/logout > EXTERNAL-APP.abc.com.SERVER.URL=http://EXTERNAL-APP.abc.com<https://external-cas.abc.com/cas/login%0AEXTERNAL-APP.abc.com.LOGOUT.URL=https://external-cas.abc.com/cas/logout%0AEXTERNAL-APP.abc.com.SERVER.URL=http://EXTERNAL-APP.abc.com> > EXTERNAL-APP.abc.com.URL.PREFIX=https://external-cas.abc.com/cas > > INTERNAL-APP.abc.com.LOGIN.URL=https://internal-cas.abc.com/cas/login > INTERNAL-APP.abc.com.LOGOUT.URL=https://internal-cas.abc.com/cas/logout > INTERNAL-APP.abc.com.SERVER.URL=http://INTERNAL-APP.abc.com<https://internal-cas.abc.com/cas/login%0AINTERNAL-APP.abc.com.LOGOUT.URL=https://internal-cas.abc.com/cas/logout%0AINTERNAL-APP.abc.com.SERVER.URL=http://INTERNAL-APP.abc.com> > INTERNAL-APP.abc.com.CAS.SERVER.URL.PREFIX= > https://internal-cas.abc.com/cas > > > I hope this helps. > > Best Regards, > Vivek > > -- > 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 > -- *Thomas Francart* *CTO** - Mondeca* 3, cité Nollez 75018 Paris France Tel. +33 (0)1 44 92 35 04 - fax +33 (0)1 44 92 02 59 Web: www.mondeca.com Blog : Leçons de choses <http://mondeca.wordpress.com> -- 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
