From acf1b849ab835bc6797adfb91f8ab4fa88f0aff5 Mon Sep 17 00:00:00 2001 From: Andreas Fitzek Date: Wed, 15 Jun 2016 08:41:10 +0200 Subject: extended validation result --- .../invoke/CMSSignatureVerificationInvoker.java | 47 +++++++++++++++------- 1 file changed, 33 insertions(+), 14 deletions(-) (limited to 'moaSig/moa-sig-lib/src/main/java/at/gv/egovernment/moa/spss/server/invoke/CMSSignatureVerificationInvoker.java') diff --git a/moaSig/moa-sig-lib/src/main/java/at/gv/egovernment/moa/spss/server/invoke/CMSSignatureVerificationInvoker.java b/moaSig/moa-sig-lib/src/main/java/at/gv/egovernment/moa/spss/server/invoke/CMSSignatureVerificationInvoker.java index f5d2826..ba0474c 100644 --- a/moaSig/moa-sig-lib/src/main/java/at/gv/egovernment/moa/spss/server/invoke/CMSSignatureVerificationInvoker.java +++ b/moaSig/moa-sig-lib/src/main/java/at/gv/egovernment/moa/spss/server/invoke/CMSSignatureVerificationInvoker.java @@ -41,6 +41,7 @@ import at.gv.egovernment.moa.spss.api.cmsverify.CMSContentReference; import at.gv.egovernment.moa.spss.api.cmsverify.CMSDataObject; import at.gv.egovernment.moa.spss.api.cmsverify.VerifyCMSSignatureRequest; import at.gv.egovernment.moa.spss.api.cmsverify.VerifyCMSSignatureResponse; +import at.gv.egovernment.moa.spss.api.common.ExtendedCertificateCheckResult; import at.gv.egovernment.moa.spss.server.config.TrustProfile; import at.gv.egovernment.moa.spss.server.logging.IaikLog; import at.gv.egovernment.moa.spss.server.logging.TransactionId; @@ -258,15 +259,13 @@ public class CMSSignatureVerificationInvoker { CMSSignatureVerificationResult cmsResult = null; List adesResults = null; + ExtendedCertificateCheckResult extCheckResult = null; if (resultObject instanceof ExtendedCMSSignatureVerificationResult) { Logger.info("Got ExtendedCMSSignatureVerificationResult"); ExtendedCMSSignatureVerificationResult result = (ExtendedCMSSignatureVerificationResult) resultObject; cmsResult = result.getCMSSignatureVerificationResult(); - try { - adesResults = getAdESResult(result); - } catch (ConfigurationException e) { - Logger.warn("Failed to provide extended validation results: " + e.getMessage()); - } + adesResults = AdESResultUtils.getAdESResult(result.getFormVerificationResult()); + if (adesResults != null) { Iterator adesIterator = adesResults.iterator(); @@ -274,6 +273,17 @@ public class CMSSignatureVerificationInvoker { Logger.info("ADES Formresults: " + adesIterator.next().toString()); } } + try { + //Logger.info("Extended Validation Report: " + result.getName()); + Logger.info("Extended Validation Code: " + result.getResultCode().toString()); + Logger.info("Extended Validation Info: " + result.getInfo()); + + extCheckResult = AdESResultUtils.getExtendedResult(result.getResultCode()); + } catch (ConfigurationException e) { + Logger.warn("Cannot generate Extendend Result. Check SVA Configuration!", e); + } catch (NullPointerException e) { + Logger.info("No extendend validation result available."); + } } else { Logger.info("Got CMSSignatureVerificationResult"); cmsResult = (CMSSignatureVerificationResult) resultObject; @@ -302,7 +312,7 @@ public class CMSSignatureVerificationInvoker { } responseBuilder.addResult(cmsResult, trustProfile, qcsscdresult.isQC(), qcsscdresult.isQCSourceTSL(), - qcsscdresult.isSSCD(), qcsscdresult.isSSCDSourceTSL(), issuerCountryCode, adesResults); + qcsscdresult.isSSCD(), qcsscdresult.isSSCDSourceTSL(), issuerCountryCode, adesResults, extCheckResult); } private void handlePDFResult(Object resultObject, VerifyCMSSignatureResponseBuilder responseBuilder, @@ -316,17 +326,14 @@ public class CMSSignatureVerificationInvoker { PDFSignatureVerificationResult cmsResult = null; List adesResults = null; + + ExtendedCertificateCheckResult extCheckResult = null; if (resultObject instanceof ExtendedPDFSignatureVerificationResult) { Logger.info("Got ExtendedPDFSignatureVerificationResult"); ExtendedPDFSignatureVerificationResult result = (ExtendedPDFSignatureVerificationResult) resultObject; cmsResult = result.getPDFSignatureVerificationResult(); - try { - adesResults = getAdESResult(result); - } catch (ConfigurationException e) { - Logger.warn("Failed to provide extended validation results", e); - //throw new MOARuntimeException("config.52", null); - } - + adesResults = AdESResultUtils.getAdESResult(result.getFormVerificationResult()); + if (adesResults != null) { Iterator adesIterator = adesResults.iterator(); while (adesIterator.hasNext()) { @@ -334,6 +341,17 @@ public class CMSSignatureVerificationInvoker { } } cmsResult = result.getPDFSignatureVerificationResult(); + try { + //Logger.info("Extended Validation Report: " + result.getName()); + Logger.info("Extended Validation Code: " + result.getResultCode().toString()); + Logger.info("Extended Validation Info: " + result.getInfo()); + + extCheckResult = AdESResultUtils.getExtendedResult(result.getResultCode()); + } catch (ConfigurationException e) { + Logger.warn("Cannot generate Extendend Result. Check SVA Configuration!", e); + } catch (NullPointerException e) { + Logger.info("No extendend validation result available."); + } } else { Logger.info("Got PDFSignatureVerificationResult"); cmsResult = (PDFSignatureVerificationResult) resultObject; @@ -361,7 +379,8 @@ public class CMSSignatureVerificationInvoker { } responseBuilder.addResult(cmsResult, trustProfile, qcsscdresult.isQC(), qcsscdresult.isQCSourceTSL(), - qcsscdresult.isSSCD(), qcsscdresult.isSSCDSourceTSL(), issuerCountryCode, adesResults); + qcsscdresult.isSSCD(), qcsscdresult.isSSCDSourceTSL(), issuerCountryCode, adesResults, + extCheckResult); } /** -- cgit v1.2.3