Class TicketIdentifierGenerationStrategy

  • All Implemented Interfaces:
    IdentifierGenerationStrategy

    public class TicketIdentifierGenerationStrategy
    extends Object
    implements IdentifierGenerationStrategy
    Generates CAS protocol ticket identifiers of the form:
     [PREFIX]-[SEQUENCE_PART]-[RANDOM_PART]-[SUFFIX],
     
    where suffix is optional. By default tickets have at least 128 bits of entropy in the random part of the identifier.
    • Field Detail

      • idGenerator

        private final org.cryptacular.generator.IdGenerator idGenerator
        Generator for random part of the ticket.
      • ticketPrefix

        @Nonnull
        @NotEmpty
        private String ticketPrefix
        Ticket prefix.
      • ticketSuffix

        @Nullable
        private String ticketSuffix
        Ticket suffix.
      • ticketLength

        @Positive
        private int ticketLength
        Number of characters in random part of generated ticket.
    • Constructor Detail

      • TicketIdentifierGenerationStrategy

        public TicketIdentifierGenerationStrategy​(@Nonnull @NotEmpty @ParameterName(name="prefix")
                                                  String prefix,
                                                  @Positive @ParameterName(name="randomLength")
                                                  int randomLength)
        Creates a new ticket ID generator.
        Parameters:
        prefix - Ticket ID prefix (e.g. ST, PT, PGT). MUST be a URL safe string.
        randomLength - Length in characters of random part of the ticket.