Class Decrypter

java.lang.Object
org.opensaml.xmlsec.encryption.support.Decrypter
org.opensaml.saml.saml2.encryption.Decrypter

public class Decrypter extends Decrypter
Class which implements SAML2-specific options for EncryptedElementType objects.

For information on other parameters and options, and general XML Encryption issues, see Decrypter.

  • Field Details

    • log

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

    • Decrypter

      public Decrypter(DecryptionParameters params)
      Constructor.
      Parameters:
      params - decryption parameters to use
    • Decrypter

      public Decrypter(@Nullable KeyInfoCredentialResolver newResolver, @Nullable KeyInfoCredentialResolver newKEKResolver, @Nullable EncryptedKeyResolver newEncKeyResolver)
      Constructor.
      Parameters:
      newResolver - resolver for data encryption keys.
      newKEKResolver - resolver for key encryption keys.
      newEncKeyResolver - resolver for EncryptedKey elements
    • Decrypter

      public Decrypter(@Nullable KeyInfoCredentialResolver newResolver, @Nullable KeyInfoCredentialResolver newKEKResolver, @Nullable EncryptedKeyResolver newEncKeyResolver, @Nullable Collection<String> includeAlgos, @Nullable Collection<String> excludeAlgos)
      Constructor.
      Parameters:
      newResolver - resolver for data encryption keys.
      newKEKResolver - resolver for key encryption keys.
      newEncKeyResolver - resolver for EncryptedKey elements
      includeAlgos - collection of included algorithm URIs
      excludeAlgos - collection of excluded algorithm URIs
  • Method Details

    • decrypt

      public Assertion decrypt(@Nonnull EncryptedAssertion encryptedAssertion) throws DecryptionException
      Decrypt the specified EncryptedAssertion.
      Parameters:
      encryptedAssertion - the EncryptedAssertion to decrypt
      Returns:
      an Assertion
      Throws:
      DecryptionException - thrown when decryption generates an error
    • decrypt

      public Attribute decrypt(@Nonnull EncryptedAttribute encryptedAttribute) throws DecryptionException
      Decrypt the specified EncryptedAttribute.
      Parameters:
      encryptedAttribute - the EncryptedAttribute to decrypt
      Returns:
      an Attribute
      Throws:
      DecryptionException - thrown when decryption generates an error
    • decrypt

      public SAMLObject decrypt(@Nonnull EncryptedID encryptedID) throws DecryptionException
      Decrypt the specified EncryptedID.

      Note that an EncryptedID can contain a NameID, an Assertion or a BaseID. It is up to the caller to determine the type of the resulting SAMLObject.

      Parameters:
      encryptedID - the EncryptedID to decrypt
      Returns:
      an XMLObject
      Throws:
      DecryptionException - thrown when decryption generates an error
    • decrypt

      public NewID decrypt(@Nonnull NewEncryptedID newEncryptedID) throws DecryptionException
      Decrypt the specified NewEncryptedID.
      Parameters:
      newEncryptedID - the NewEncryptedID to decrypt
      Returns:
      a NewID
      Throws:
      DecryptionException - thrown when decryption generates an error
    • decryptData

      private SAMLObject decryptData(@Nonnull EncryptedElementType encElement) throws DecryptionException
      Decrypt the specified instance of EncryptedElementType, and return it as an instance of the specified QName.
      Parameters:
      encElement - the EncryptedElementType to decrypt
      Returns:
      the decrypted SAMLObject
      Throws:
      DecryptionException - thrown when decryption generates an error
    • logPostDecryption

      private void logPostDecryption(XMLObject xmlObject)
      Log the target object after decryption.
      Parameters:
      xmlObject - the decrypted XMLObject