Hi Petr,
Thank you for your input. We upgraded from version before CAS v6.6.0-RC4 and the issue is related to the thread you mentioned. We are trying to proceed by removing the tickets deletion logic (beforeTrackingServiceTicket() method) from
AllServicesSessionTrackingPolicy class as below:
public String trackTicket(final Ticket ownerTicket, final Ticket ticket) {
val serviceTicket = (ServiceTicket) ticket;
val ticketGrantingTicket = (TicketGrantingTicket) ownerTicket;
val trackedEntry = String.format("%s,%s", serviceTicket.getId(), serviceTicket.getService());
lock.tryLock(__ -> {
ticketGrantingTicket.update();
serviceTicket.getService().setPrincipal(ticketGrantingTicket.getRoot().getAuthentication().getPrincipal().getId());
System.out.println("This is trying to delete the PTs of the PGT:" + ticketGrantingTicket.getId());
System.out.println("But we have commented this");
// beforeTrackingServiceTicket(ownerTicket, serviceTicket);
ticketGrantingTicket.getServices().put(serviceTicket.getId(), serviceTicket.getService());
});
return trackedEntry;
}