Class ClientInformationKeyTransportEncryptionAlgorithmsLookupStrategy

All Implemented Interfaces:
BiFunction<CriteriaSet,Predicate<String>,List<String>>

public class ClientInformationKeyTransportEncryptionAlgorithmsLookupStrategy extends DefaultKeyTransportEncryptionAlgorithmsLookupStrategy
A lookup strategy that finds key transport algorithms from local configuration that are compatible with those configured to RP.

The set of supported and configured key transport ('alg') algorithms are derived from the intersection of those supported by local configuration and the one configured for RP.

  • Field Details

    • log

      @Nonnull private final org.slf4j.Logger log
      Logger.
    • clientKeyTransportAlgorithmLookupStrategy

      @Nonnull private final Function<OIDCClientInformation,String> clientKeyTransportAlgorithmLookupStrategy
      A strategy to locate the algorithm ('alg') appropriate for the JWT to be encrypted. Can return null if the metadata does not describe its supported algorithms (which is optional).
  • Constructor Details

    • ClientInformationKeyTransportEncryptionAlgorithmsLookupStrategy

      public ClientInformationKeyTransportEncryptionAlgorithmsLookupStrategy(@Nonnull @ParameterName(name="clientKeyTransportAlgorithmsLookupStrategy") Function<OIDCClientInformation,String> strategy, @Nullable @ParameterName(name="AlgorithmRegistry") AlgorithmRegistry registry)
      Constructor.
      Parameters:
      strategy - the strategy used to locate the algorithm ('alg') from the client metadata appropriate for the JWT to be encrypted.
      registry - the algorithm registry to used when resolving algorithm URIs. Can be null.
    • ClientInformationKeyTransportEncryptionAlgorithmsLookupStrategy

      public ClientInformationKeyTransportEncryptionAlgorithmsLookupStrategy(@Nonnull @ParameterName(name="clientKeyTransportAlgorithmLookupStrategy") Function<OIDCClientInformation,String> strategy)
      Constructor.
      Parameters:
      strategy - the strategy used to locate the algorithm ('alg') from the client metadata appropriate for the JWT to be encrypted.
  • Method Details