Class XMLSignedDocumentValidator

java.lang.Object
se.swedenconnect.sigval.xml.verify.impl.XMLSignedDocumentValidator
All Implemented Interfaces:
se.idsec.signservice.security.sign.SignatureValidator<Document>, se.idsec.signservice.security.sign.xml.XMLSignatureValidator, ExtendedXMLSignedDocumentValidator

public class XMLSignedDocumentValidator extends Object implements ExtendedXMLSignedDocumentValidator
XML Document signature validator for validating signatures on XML documents
Author:
Martin Lindström (martin@idsec.se), Stefan Santesson (stefan@idsec.se)
  • Constructor Details

    • XMLSignedDocumentValidator

      public XMLSignedDocumentValidator(XMLSignatureElementValidator signatureElementValidator)
      Constructor setting up the validator
      Parameters:
      signatureElementValidator - signature element validator
  • Method Details

    • extendedResultValidation

      public SignedDocumentValidationResult<ExtendedXmlSigvalResult> extendedResultValidation(Document document) throws SignatureException
      Compile a complete XML signature verification result object from the list of individual signature results
      Specified by:
      extendedResultValidation in interface ExtendedXMLSignedDocumentValidator
      Parameters:
      document - validate the complete PDF document and return concluding validation results for the complete document.
      Returns:
      XML signature validation result objects
      Throws:
      SignatureException - error validating signed document
    • validate

      public List<se.idsec.signservice.security.sign.SignatureValidationResult> validate(Document document) throws SignatureException
      Specified by:
      validate in interface se.idsec.signservice.security.sign.SignatureValidator<Document>
      Throws:
      SignatureException
    • validate

      public List<se.idsec.signservice.security.sign.SignatureValidationResult> validate(Document document, se.idsec.signservice.security.sign.xml.XMLSignatureLocation signatureLocation) throws SignatureException
      Specified by:
      validate in interface se.idsec.signservice.security.sign.xml.XMLSignatureValidator
      Throws:
      SignatureException
    • validate

      protected List<se.idsec.signservice.security.sign.SignatureValidationResult> validate(Document document, List<Element> signatures) throws Exception
      Validates the supplied signatures.
      Parameters:
      document - the document containing the signatures
      signatures - the signatures
      Returns:
      a list of result objects
      Throws:
      Exception - on errors validating signature
    • isSigned

      public boolean isSigned(Document document) throws IllegalArgumentException
      Specified by:
      isSigned in interface se.idsec.signservice.security.sign.SignatureValidator<Document>
      Throws:
      IllegalArgumentException
    • getRequiredSignerCertificates

      public List<X509Certificate> getRequiredSignerCertificates()
      Specified by:
      getRequiredSignerCertificates in interface se.idsec.signservice.security.sign.SignatureValidator<Document>
    • getCertificateValidator

      public se.idsec.signservice.security.certificate.CertificateValidator getCertificateValidator()
      Specified by:
      getCertificateValidator in interface se.idsec.signservice.security.sign.SignatureValidator<Document>
    • getConcludingSigVerifyResult

      public static SignedDocumentValidationResult<ExtendedXmlSigvalResult> getConcludingSigVerifyResult(List<se.idsec.signservice.security.sign.SignatureValidationResult> sigVerifyResultList)
      Compile a complete XML signature verification result object from the list of individual signature results
      Parameters:
      sigVerifyResultList - list of individual signature validation results. Each result must be of type ExtendedXmlSigvalResult
      Returns:
      Signature validation result objects