...
Code Block | ||
---|---|---|
| ||
public Interface TicketGrantingTicket extends Ticket { /** * Get the Principal which owns this TicketGrantingTicket and may exercise it * to obtain a TargettedTicket for authentication to a particular URL. * For instance, in the case of a SSOTicket this Principal is the end user who authenticated * to CAS by presentation of Primary Credentials. * In the case of a ProxyGrantingTicket, this is the URL to which the PGT was vended. */ public Principal getPrincipal(); /** * Derive from this TicketGrantingTicket a TargettedTicket for use in authenticating * to some particular target. */ public TargettedTicket deriveTicket(URL target); } |
Code Block | ||
---|---|---|
| ||
public Class SSOTicket implements TicketGrantingTicket {
private final Date whenCreated = new Date();
private final Principal authenticatedUser;
private final ExpirationPolicy expPolicy;
public SSOTicket(Principal authenticatedUser, public ExpirationPolicy expPolicy) {
this.authenticatedUser = authenticatedUser;
this.expPolicy = expPolicy;
}
public Principal getUser() {
return this.authenticatedUser;
}
public boolean isValid() {
return this.expPolicy.isValid();
}
public void expire() {
this.expPolicy.expire();
}
}
|
Code Block | ||
---|---|---|
| ||
public Interface DerivedTicket extends Ticket { /** * Get the TicketGrantingTicket from which this ticket was derived. */ public TicketGrantingTicket getParent(); } |
...