instructure/canvas-lms — pull request #516 by eriko (2014-09-24 23:28:06+00:00)
Title: patch to better deal with CAS SLO requests and the reseting of the presi...

...stence token

This is a prototype of how I think CAS SLO requests could better handled. I would never expect this to end up in the code base.
This is related to #715541 and #733160 that make the first one worse.

What the code does is track when the CAS ST's (Service Tickets) are created and uses that information to control the calling pseudonym.try(:reset_persistence_token!) in self.release_cas_ticket . It limits this action to when the SLO comes from the most recent ST and does not call it for older tickets. This way is the user logged in 9:55 hours ago (life time of our TGT (Ticket Granting Ticket) is 10 hours and then logs into a new computer in the morning (school lab) the SLO requests from the ticket last night will not disrupt there use of quizes, discussion, or the gradebook.