Thanks Scott.

I've done a little more digging since my last e-mail and it appears the reason 
rubycas-client uses "destination" is because rubycas-server uses "destination" 
instead of "service" for redirect on logout.

Oddly enough rubycas-client used "service" for redirect on logout before 
v2.1.0. For some reason in late 2009 they decided to switch it to "destination" 
"to better match the behaviour of other CAS clients." 
http://rubycas-client.googlecode.com/svn/trunk/rubycas-client/History.txt

It seems to me that redirect on logout is a feature that for the most part is 
being widely supported in one form or another. Because it is not specified in 
the CAS protocol there has been feature fragmentation at least in the case of 
RubyCAS.

It might be more trouble than it's worth but it seems reasonable to me for the 
CAS protocol specification to be updated so that it includes "service" as an 
optionally supported parameter for /logout so when developers implement this 
feature it is done consistently.

Any thoughts?

Jonathan

________________________________
From: Scott Battaglia [[email protected]]
Sent: Sunday, April 22, 2012 14:36
To: [email protected]
Subject: Re: [cas-user] /logout service parameter

Its not an official part of the CAS protocol. It was included as "service" when 
CAS3 was written (6 years ago) because it was a common extension.  I can't 
speak for why RubyCAS-client chose to use "destination" and not "service".

Cheers,
Scott

On Mon, Apr 16, 2012 at 2:37 PM, Jonathan Windle 
<[email protected]<mailto:[email protected]>>
 wrote:
Hello,

I'm looking for information about how "official" and widely the service 
parameter is used with /logout. We enable this feature in our CAS 
implementation by setting the followServiceRedirects property to true for the 
LogoutController defined in cas-servlet.xml (http://goo.gl/JLz9c). Up until 
this point I have found this feature to be pretty well supported by most CAS 
clients and plug-ins that we have implemented.

Currently we are implementing the Canvas LMS by Instructure and it being a Ruby 
on Rails product they use RubyCAS-Client to support CAS.

The problem we are having is that RubyCAS-Client returns the redirect url to 
/logout in a destination parameter not as a service parameter (Look under 
"Defining a 'logout' action" at https://github.com/rubycas/rubycas-client).

So at this point I'm kind of wondering why the CAS specification 
(http://www.jasig.org/cas/protocol) doesn't define a parameter for redirect on 
logout and why RubyCAS-Client seems to think that the parameter name should be 
destination vs service.

I would also be interested in knowing what's involved in making /logout 
understand what to do with the destination parameter.

Thanks,
Jonathan
--
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

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