Hi all,
I don't know if this is the best place to ask this
question, but as we are a group of collaboration between
identity projects, it seems not to be the worst place ;)
I implemented CAS protocol (full 1.0 and 2.0, and a part of
3.0 with attributes sharing) in LemonLDAP:NG
(
http://lemonldap-ng.org)
I faced a little issue this week by moving an application from
JASIG CAS to LemonLDAP::NG:
* When the application first ask for a service ticket, the
"service" value is something like
"http://service.example.com/;jessionid=xxxxxxxxx"
* When validating this service ticket, the submitted "service"
value is
"http://service.example.com/"
Looking at CAS protocol
(
https://apereo.github.io/cas/4.2.x/protocol/CAS-Protocol-Specification.html),
in section 2.5.3, I read this:
INVALID_SERVICE
- the ticket provided was valid, but the service specified
did not match the service associated with the ticket. CAS MUST
invalidate
the ticket and disallow future validation of that same ticket.
In my code, I reject the request. But it seems that JASIG CAS
allows this request.