Interface TicketComponent
- All Known Implementing Classes:
InMemoryTicketComponentImpl
Manage authentication tickets
- Author:
- andyh
-
Method Summary
Modifier and TypeMethodDescriptionvoidClear the current ticketintcountTickets(boolean nonExpiredOnly) Count tickets This may be higher than the user count, since a user can have more than one ticket/sessiongetAuthorityForTicket(String ticket) Get the authority for the given ticketgetCurrentTicket(String userName, boolean autoCreate) Get the current ticketgetNewTicket(String userName) Register a new ticketgetUsersWithTickets(boolean nonExpiredOnly) Get set of users with tickets This may be lower than the ticket count, since a user can have more than one ticket/sessionbooleanDoes this ticket component support a single ticket per user or one ticket for each time they login?voidinvalidateTicketById(String ticket) Invalidate the tickets by idvoidinvalidateTicketByUser(String userName) Invalidate all user ticketsintinvalidateTickets(boolean expiredOnly) Invalidate ticketsvalidateTicket(String ticket) Check that a certificate is valid and can be used in place of a login.
-
Method Details
-
getNewTicket
Register a new ticket- Parameters:
userName- String- Returns:
- - the ticket
- Throws:
AuthenticationException
-
getCurrentTicket
Get the current ticket- Parameters:
userName- StringautoCreate- should we create one automatically if there isn't one?- Returns:
- - the ticket
-
validateTicket
@Auditable(parameters="ticket", recordable=false) String validateTicket(String ticket) throws AuthenticationException Check that a certificate is valid and can be used in place of a login. Tickets may be rejected because:- The certificate does not exists
- The status of the user has changed
- The user is locked
- The account has expired
- The credentials have expired
- The account is disabled
- The ticket may have expired
- The ticked my be invalid by timed expiry
- An attemp to reuse a once only ticket
- Parameters:
ticket- String- Returns:
- - the user name
- Throws:
AuthenticationException
-
invalidateTicketById
Invalidate the tickets by id- Parameters:
ticket- String
-
invalidateTicketByUser
Invalidate all user tickets- Parameters:
userName- String
-
countTickets
int countTickets(boolean nonExpiredOnly) Count tickets This may be higher than the user count, since a user can have more than one ticket/session- Parameters:
nonExpiredOnly- true for non expired tickets, false for all (including expired) tickets- Returns:
- int number of tickets
-
getUsersWithTickets
Get set of users with tickets This may be lower than the ticket count, since a user can have more than one ticket/session- Parameters:
nonExpiredOnly- true for non expired tickets, false for all (including expired) tickets
-
invalidateTickets
int invalidateTickets(boolean expiredOnly) Invalidate tickets- Parameters:
expiredOnly- true for EXPIRED tickets, false for ALL (including non-expired) tickets- Returns:
- int count of invalidated tickets
-
getAuthorityForTicket
Get the authority for the given ticket- Parameters:
ticket- String- Returns:
- the authority
-
clearCurrentTicket
void clearCurrentTicket()Clear the current ticket -
getUseSingleTicketPerUser
boolean getUseSingleTicketPerUser()Does this ticket component support a single ticket per user or one ticket for each time they login?- Returns:
- boolean
-