java.lang.Object
eu.europa.esig.dss.validation.CertificateValidator
- All Implemented Interfaces:
ProcessExecutorProvider<CertificateProcessExecutor>
public class CertificateValidator
extends Object
implements ProcessExecutorProvider<CertificateProcessExecutor>
Validates a CertificateToken
-
Method Summary
Modifier and TypeMethodDescriptionprotected voidChecks if the Validator configuration is validprotected DiagnosticDataBuildercreateDiagnosticDataBuilder(eu.europa.esig.dss.spi.validation.ValidationContext validationContext) Creates and fills theDiagnosticDataBuilderwith a relevant dataprotected eu.europa.esig.dss.spi.validation.ValidationContextThis method creates a new instance ofValidationContextperforming preparation of validation data, certificate chain building, revocation request, as well as custom validation checks execution.static CertificateValidatorfromCertificate(eu.europa.esig.dss.model.x509.CertificateToken token) Creates a CertificateValidator from a certificateTokenReturns a default for a validator process executorfinal eu.europa.esig.dss.diagnostic.jaxb.XmlDiagnosticDataThis method retrievesXmlDiagnosticDatacontaining all information relevant for the validation process, including the certificate and revocation tokens obtained from online resources, e.g.protected DiagnosticDataBuilderCreates aDiagnosticDataBuilderprotected eu.europa.esig.dss.spi.validation.ValidationContextprepareValidationContext(eu.europa.esig.dss.spi.validation.CertificateVerifier certificateVerifier) Initializes and fillsValidationContextfor a certificate token validationGets theCertificateProcessExecutorvoidsetCertificateVerifier(eu.europa.esig.dss.spi.validation.CertificateVerifier certificateVerifier) Sets the CertificateVerifiervoidsetDefaultDigestAlgorithm(eu.europa.esig.dss.enumerations.DigestAlgorithm digestAlgorithm) This method allows to change the Digest Algorithm that will be used for tokens' digest calculation Default :DigestAlgorithm.SHA256voidSets the Locale to use for messages in reportsvoidsetProcessExecutor(CertificateProcessExecutor processExecutor) This method provides the possibility to set the specificCustomProcessExecutorvoidsetTokenExtractionStrategy(eu.europa.esig.dss.enumerations.TokenExtractionStrategy tokenExtractionStrategy) Sets the TokenExtractionStrategyvoidsetTokenIdentifierProvider(eu.europa.esig.dss.model.identifier.TokenIdentifierProvider identifierProvider) Sets the TokenIdentifierProvidervoidsetValidationContextExecutor(eu.europa.esig.dss.spi.validation.executor.ValidationContextExecutor validationContextExecutor) This method setsValidationContextExecutorfor validation of the preparedValidationContextDefault:eu.europa.esig.dss.validation.executor.context.DefaultValidationContextExecutor(performs basic validation of tokens, including certificate chain building and revocation data extraction, without processing of validity checks)voidsetValidationTime(Date validationTime) Sets the validationTimevalidate()Validates the certificate with a default validation policyvalidate(eu.europa.esig.dss.policy.ValidationPolicy validationPolicy) Validated the certificate with a custom validation policyvalidate(InputStream policyDataStream) This method validates a certificate with the given validation policyInputStreamprotected voidvalidateContext(eu.europa.esig.dss.spi.validation.ValidationContext validationContext) Process the validation
-
Method Details
-
fromCertificate
public static CertificateValidator fromCertificate(eu.europa.esig.dss.model.x509.CertificateToken token) Creates a CertificateValidator from a certificateToken- Parameters:
token-CertificateToken- Returns:
CertificateValidator
-
setCertificateVerifier
public void setCertificateVerifier(eu.europa.esig.dss.spi.validation.CertificateVerifier certificateVerifier) Sets the CertificateVerifier- Parameters:
certificateVerifier-CertificateVerifier
-
setTokenExtractionStrategy
public void setTokenExtractionStrategy(eu.europa.esig.dss.enumerations.TokenExtractionStrategy tokenExtractionStrategy) Sets the TokenExtractionStrategy- Parameters:
tokenExtractionStrategy-TokenExtractionStrategy
-
setTokenIdentifierProvider
public void setTokenIdentifierProvider(eu.europa.esig.dss.model.identifier.TokenIdentifierProvider identifierProvider) Sets the TokenIdentifierProvider- Parameters:
identifierProvider-TokenIdentifierProvider
-
setValidationTime
-
setLocale
-
setValidationContextExecutor
public void setValidationContextExecutor(eu.europa.esig.dss.spi.validation.executor.ValidationContextExecutor validationContextExecutor) This method setsValidationContextExecutorfor validation of the preparedValidationContextDefault:eu.europa.esig.dss.validation.executor.context.DefaultValidationContextExecutor(performs basic validation of tokens, including certificate chain building and revocation data extraction, without processing of validity checks)- Parameters:
validationContextExecutor-ValidationContextExecutor
-
setDefaultDigestAlgorithm
public void setDefaultDigestAlgorithm(eu.europa.esig.dss.enumerations.DigestAlgorithm digestAlgorithm) This method allows to change the Digest Algorithm that will be used for tokens' digest calculation Default :DigestAlgorithm.SHA256- Parameters:
digestAlgorithm-DigestAlgorithmto use
-
validate
Validates the certificate with a default validation policy- Returns:
CertificateReports
-
validate
This method validates a certificate with the given validation policyInputStream- Parameters:
policyDataStream-InputStreamrepresenting the XML Validation Policy file- Returns:
CertificateReports
-
validate
Validated the certificate with a custom validation policy- Parameters:
validationPolicy-ValidationPolicy- Returns:
CertificateReports
-
assertConfigurationValid
protected void assertConfigurationValid()Checks if the Validator configuration is valid -
getDiagnosticData
public final eu.europa.esig.dss.diagnostic.jaxb.XmlDiagnosticData getDiagnosticData()This method retrievesXmlDiagnosticDatacontaining all information relevant for the validation process, including the certificate and revocation tokens obtained from online resources, e.g. AIA, CRL, OCSP (when applicable).- Returns:
XmlDiagnosticData
-
prepareValidationContext
protected eu.europa.esig.dss.spi.validation.ValidationContext prepareValidationContext(eu.europa.esig.dss.spi.validation.CertificateVerifier certificateVerifier) Initializes and fillsValidationContextfor a certificate token validation- Parameters:
certificateVerifier-CertificateVerifierto be used- Returns:
ValidationContext
-
createValidationContext
protected eu.europa.esig.dss.spi.validation.ValidationContext createValidationContext()This method creates a new instance ofValidationContextperforming preparation of validation data, certificate chain building, revocation request, as well as custom validation checks execution.- Returns:
ValidationContext
-
prepareDiagnosticDataBuilder
Creates aDiagnosticDataBuilder- Returns:
DiagnosticDataBuilder
-
validateContext
protected void validateContext(eu.europa.esig.dss.spi.validation.ValidationContext validationContext) Process the validation- Parameters:
validationContext-ValidationContextto process
-
createDiagnosticDataBuilder
protected DiagnosticDataBuilder createDiagnosticDataBuilder(eu.europa.esig.dss.spi.validation.ValidationContext validationContext) Creates and fills theDiagnosticDataBuilderwith a relevant data- Parameters:
validationContext-ValidationContextused for the validation- Returns:
- filled
DiagnosticDataBuilder
-
setProcessExecutor
Description copied from interface:ProcessExecutorProviderThis method provides the possibility to set the specificCustomProcessExecutor- Specified by:
setProcessExecutorin interfaceProcessExecutorProvider<CertificateProcessExecutor>- Parameters:
processExecutor-ProcessExecutor
-
provideProcessExecutorInstance
Gets theCertificateProcessExecutor- Returns:
CertificateProcessExecutor
-
getDefaultProcessExecutor
Description copied from interface:ProcessExecutorProviderReturns a default for a validator process executor- Specified by:
getDefaultProcessExecutorin interfaceProcessExecutorProvider<CertificateProcessExecutor>- Returns:
- Process Executor
-