Class DefaultDataEncryptionAlgorithmsLookupStrategy

java.lang.Object
net.shibboleth.oidc.security.impl.AbstractEncryptionAlgorithmsLookupStrategy
net.shibboleth.oidc.security.jose.impl.DefaultDataEncryptionAlgorithmsLookupStrategy
All Implemented Interfaces:
BiFunction<CriteriaSet,Predicate<String>,List<String>>
Direct Known Subclasses:
ClientInformationDataEncryptionAlgorithmsLookupStrategy, ProviderMetadataDataEncryptionAlgorithmsLookupStrategy

public class DefaultDataEncryptionAlgorithmsLookupStrategy extends AbstractEncryptionAlgorithmsLookupStrategy
A BiFunction which pulls data encryption (content encryption) algorithms to use from the encryption configuration and filters them. Algorithms are removed (filtered) if not supported by the runtime or are explicitly excluded or not included.
Since:
2.2.0
  • Constructor Details

    • DefaultDataEncryptionAlgorithmsLookupStrategy

      protected DefaultDataEncryptionAlgorithmsLookupStrategy(@Nullable AlgorithmRegistry registry)
      Constructor.
      Parameters:
      registry - the algorithm registry to use when resolving algorithm URIs. Can be null to use the global registry.
  • Method Details

    • apply

      @Nullable public List<String> apply(@Nullable CriteriaSet criteria, @Nullable Predicate<String> includeExcludePredicate)
    • getDataEncryptionAlgorithmsFromConfiguration

      @Nonnull @NotLive @Unmodifiable protected List<String> getDataEncryptionAlgorithmsFromConfiguration(@Nullable CriteriaSet criteria, @Nullable Predicate<String> includeExcludePredicate)
      Get the data encryption 'enc' algorithms from the EncryptionConfiguration inside the criteria set.
      Parameters:
      criteria - to pull out the EncryptionConfiguration
      includeExcludePredicate - the include and exclude predicates to filter the credentials with
      Returns:
      the data/content encryption algorithms from the configuration, an empty list otherwise