javax.security.auth.kerberos
Class KerberosTicket
public
class
KerberosTicket
extends Object
implements Destroyable, Serializable, Refreshable
This class represents a Kerberos ticket. See the Kerberos
authentication RFC for more information:
RFC 1510.
Since: 1.4
Constructor Summary |
| KerberosTicket(byte[] asn1Encoding, KerberosPrincipal client, KerberosPrincipal server, byte[] key, int type, boolean[] flags, Date authTime, Date startTime, Date endTime, Date renewTill, InetAddress[] clientAddresses)
Create a new ticket given all the facts about it.
|
Method Summary |
void | destroy()
Destroy this ticket. |
Date | getAuthTime()
Return the authentication time for this ticket. |
KerberosPrincipal | getClient()
Return the client principal for this ticket. |
InetAddress[] | getClientAddresses()
Return the allowable client addresses for this ticket. |
byte[] | getEncoded()
Return the encoded form of this ticket. |
Date | getEndTime()
Return the end time for this ticket. |
boolean[] | getFlags()
Return the flags for this ticket as a boolean array.
|
Date | getRenewTill()
Return the renewal time for this ticket. |
KerberosPrincipal | getServer()
Return the server principal for this ticket. |
SecretKey | getSessionKey()
Return the secret key associated with this ticket. |
Date | getStartTime()
Return the start time for this ticket. |
boolean | isCurrent()
Return true if the ticket is currently valid. |
boolean | isDestroyed()
Return true if this ticket has been destroyed. |
boolean | isForwardable()
Return true if this ticket is forwardable. |
boolean | isForwarded()
Return true if this ticket has been forwarded. |
boolean | isInitial()
Return true if this ticket was granted by an application
server, and not via a ticket-granting ticket. |
boolean | isPostdated()
Return true if this ticket was post-dated. |
boolean | isProxiable()
Return true if this ticket is proxiable. |
boolean | isProxy()
Return true if this ticket is a proxy ticket. |
boolean | isRenewable()
Return true if this ticket is renewable. |
void | refresh()
If the ticket is renewable, and the renewal time has not yet elapsed,
attempt to renew the ticket. |
String | toString() |
public KerberosTicket(byte[] asn1Encoding,
KerberosPrincipal client,
KerberosPrincipal server, byte[] key, int type, boolean[] flags, Date authTime, Date startTime, Date endTime, Date renewTill, InetAddress[] clientAddresses)
Create a new ticket given all the facts about it.
Note that flags may be null or "short"; any flags not specified
will be taken to be false.
If the key is not renewable, then renewTill may be null.
If authTime is null, then it is taken to be the same as startTime.
If clientAddresses is null, then the ticket can be used anywhere.
Parameters: asn1Encoding the contents of the ticket, as ASN1 client the client principal server the server principal key the contents of the session key type the type of the key flags an array of flags, as specified by the RFC authTime when the client was authenticated startTime starting time at which the ticket is valid endTime ending time, after which the ticket is invalid renewTill for a rewewable ticket, the time before which it must
be renewed clientAddresses a possibly-null array of addresses where this
ticket may be used
public void destroy()
Destroy this ticket. This discards secret information. After this
method is called, other methods will throw IllegalStateException.
public final Date getAuthTime()
Return the authentication time for this ticket.
Return the client principal for this ticket.
public final InetAddress[] getClientAddresses()
Return the allowable client addresses for this ticket. This will
return null if the ticket can be used anywhere.
public final byte[] getEncoded()
Return the encoded form of this ticket.
public final Date getEndTime()
Return the end time for this ticket.
public final boolean[] getFlags()
Return the flags for this ticket as a boolean array.
See the RFC to understand what the different entries mean.
public final Date getRenewTill()
Return the renewal time for this ticket. For a non-renewable
ticket, this will return null.
Return the server principal for this ticket.
public final SecretKey getSessionKey()
Return the secret key associated with this ticket.
public final Date getStartTime()
Return the start time for this ticket.
public boolean isCurrent()
Return true if the ticket is currently valid. This is true if
the system time is between the ticket's start and end times.
public boolean isDestroyed()
Return true if this ticket has been destroyed.
public final boolean isForwardable()
Return true if this ticket is forwardable.
public final boolean isForwarded()
Return true if this ticket has been forwarded.
public final boolean isInitial()
Return true if this ticket was granted by an application
server, and not via a ticket-granting ticket.
public final boolean isPostdated()
Return true if this ticket was post-dated.
public final boolean isProxiable()
Return true if this ticket is proxiable.
public final boolean isProxy()
Return true if this ticket is a proxy ticket.
public final boolean isRenewable()
Return true if this ticket is renewable.
public void refresh()
If the ticket is renewable, and the renewal time has not yet elapsed,
attempt to renew the ticket.
Throws: RefreshFailedException if the renewal fails for any reason
public String toString()