Class SimpleRetrievalMethodEncryptedKeyResolver

java.lang.Object
org.opensaml.xmlsec.encryption.support.AbstractEncryptedKeyResolver
org.opensaml.xmlsec.encryption.support.SimpleRetrievalMethodEncryptedKeyResolver
All Implemented Interfaces:
EncryptedKeyResolver

public class SimpleRetrievalMethodEncryptedKeyResolver extends AbstractEncryptedKeyResolver
Implementation of EncryptedKeyResolver which finds EncryptedKey elements by dereferencing RetrievalMethod children of the KeyInfo of the EncryptedData context. The RetrievalMethod must have a Type attribute with the value of EncryptionConstants.TYPE_ENCRYPTED_KEY. The URI attribute value must be a same-document fragment identifier (via ID attribute). Processing of transforms children of RetrievalMethod is not supported by this implementation.
  • Field Details

    • log

      private final org.slf4j.Logger log
      Class logger.
  • Constructor Details

    • SimpleRetrievalMethodEncryptedKeyResolver

      public SimpleRetrievalMethodEncryptedKeyResolver()
      Constructor.
    • SimpleRetrievalMethodEncryptedKeyResolver

      public SimpleRetrievalMethodEncryptedKeyResolver(@Nullable Set<String> recipients)
      Constructor.
      Parameters:
      recipients - the set of recipients
    • SimpleRetrievalMethodEncryptedKeyResolver

      public SimpleRetrievalMethodEncryptedKeyResolver(@Nullable String recipient)
      Constructor.
      Parameters:
      recipient - the recipient
  • Method Details

    • resolve

      @Nonnull public Iterable<EncryptedKey> resolve(@Nonnull EncryptedData encryptedData)
      Resolve the EncryptedKey elements containing the data encryption key used to encrypt the specified EncryptedData element.
      Parameters:
      encryptedData - the EncryptedData element context in which to resolve
      Returns:
      an iterable of EncryptedKey elements
    • dereferenceURI

      @Nullable protected EncryptedKey dereferenceURI(@Nonnull RetrievalMethod rm)
      Dereference the URI attribute of the specified retrieval method into an EncryptedKey.
      Parameters:
      rm - the RetrievalMethod to process
      Returns:
      the dereferenced EncryptedKey