You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by fo...@apache.org on 2017/07/28 14:25:02 UTC
camel git commit: CAMEL-11438 spring tests added to crypto-cms
Repository: camel
Updated Branches:
refs/heads/master 8781be036 -> cf9cd31e7
CAMEL-11438 spring tests added to crypto-cms
Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/cf9cd31e
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/cf9cd31e
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/cf9cd31e
Branch: refs/heads/master
Commit: cf9cd31e705628588c774751150422c2bfdd9193
Parents: 8781be0
Author: Franz Forsthofer <fr...@sap.com>
Authored: Fri Jul 28 16:21:32 2017 +0200
Committer: Franz Forsthofer <fr...@sap.com>
Committed: Fri Jul 28 16:21:32 2017 +0200
----------------------------------------------------------------------
.../common/DefaultCryptoCmsConfiguration.java | 2 +-
.../crypto/cms/sig/DefaultSignerInfo.java | 4 +-
.../component/crypto/cms/ComponentTest.java | 7 +-
.../crypto/cms/SpringComponentTest.java | 34 +++++
.../component/crypto/cms/util/KeystoreUtil.java | 2 +-
.../src/test/resources/SpringCryptoCmsTests.xml | 123 +++++++++++++++++++
.../src/test/resources/keystore/system.jks | Bin 5697 -> 5697 bytes
7 files changed, 163 insertions(+), 9 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/camel/blob/cf9cd31e/components/camel-crypto-cms/src/main/java/org/apache/camel/component/crypto/cms/common/DefaultCryptoCmsConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-crypto-cms/src/main/java/org/apache/camel/component/crypto/cms/common/DefaultCryptoCmsConfiguration.java b/components/camel-crypto-cms/src/main/java/org/apache/camel/component/crypto/cms/common/DefaultCryptoCmsConfiguration.java
index 120ee22..7331aa5 100644
--- a/components/camel-crypto-cms/src/main/java/org/apache/camel/component/crypto/cms/common/DefaultCryptoCmsConfiguration.java
+++ b/components/camel-crypto-cms/src/main/java/org/apache/camel/component/crypto/cms/common/DefaultCryptoCmsConfiguration.java
@@ -35,7 +35,7 @@ public abstract class DefaultCryptoCmsConfiguration {
private KeyStore keyStore;
/**
- * Keystore containing signer private keys verifier public keys, encryptor
+ * Keystore containing signer private keys, verifier public keys, encryptor
* public keys, decryptor private keys depending on the operation. Use
* either this parameter or the parameter 'keystore'.
*/
http://git-wip-us.apache.org/repos/asf/camel/blob/cf9cd31e/components/camel-crypto-cms/src/main/java/org/apache/camel/component/crypto/cms/sig/DefaultSignerInfo.java
----------------------------------------------------------------------
diff --git a/components/camel-crypto-cms/src/main/java/org/apache/camel/component/crypto/cms/sig/DefaultSignerInfo.java b/components/camel-crypto-cms/src/main/java/org/apache/camel/component/crypto/cms/sig/DefaultSignerInfo.java
index 0a02a03..19480ee 100644
--- a/components/camel-crypto-cms/src/main/java/org/apache/camel/component/crypto/cms/sig/DefaultSignerInfo.java
+++ b/components/camel-crypto-cms/src/main/java/org/apache/camel/component/crypto/cms/sig/DefaultSignerInfo.java
@@ -50,10 +50,10 @@ public class DefaultSignerInfo extends DefaultCryptoCmsConfiguration implements
@UriParam(label = "sign", defaultValue = "true")
private boolean includeCertificates = true;
- @UriParam(label = "sign,advanced")
+ @UriParam(label = "sign")
private CMSAttributeTableGenerator signedAttributeGenerator = new DefaultSignedAttributeTableGenerator();
- @UriParam(label = "sign,advanced", defaultValue = "null")
+ @UriParam(label = "sign", defaultValue = "null")
private CMSAttributeTableGenerator unsignedAttributeGenerator;
/**
http://git-wip-us.apache.org/repos/asf/camel/blob/cf9cd31e/components/camel-crypto-cms/src/test/java/org/apache/camel/component/crypto/cms/ComponentTest.java
----------------------------------------------------------------------
diff --git a/components/camel-crypto-cms/src/test/java/org/apache/camel/component/crypto/cms/ComponentTest.java b/components/camel-crypto-cms/src/test/java/org/apache/camel/component/crypto/cms/ComponentTest.java
index 497aa70..2e7d8c9 100644
--- a/components/camel-crypto-cms/src/test/java/org/apache/camel/component/crypto/cms/ComponentTest.java
+++ b/components/camel-crypto-cms/src/test/java/org/apache/camel/component/crypto/cms/ComponentTest.java
@@ -110,9 +110,8 @@ public class ComponentTest extends CamelTestSupport {
recipient.setKeyStoreParameters(keystore);
DefaultSignerInfo signerInfo = new DefaultSignerInfo();
- signerInfo.setIncludeCertificates(true); // optional default
- // value is true
- signerInfo.setSignatureAlgorithm("SHA256withRSA"); // mandatory
+ signerInfo.setIncludeCertificates(true);
+ signerInfo.setSignatureAlgorithm("SHA256withRSA");
signerInfo.setPrivateKeyAlias("rsa");
signerInfo.setKeyStoreParameters(keystore);
@@ -121,8 +120,6 @@ public class ComponentTest extends CamelTestSupport {
signerInfo2.setPrivateKeyAlias("dsa");
signerInfo2.setKeyStoreParameters(keystore);
- getContext().addComponent("crypto-cms", new CryptoCmsComponent(getContext()));
-
simpleReg.put("keyStoreParameters", keystore);
simpleReg.put("signer1", signerInfo);
simpleReg.put("signer2", signerInfo2);
http://git-wip-us.apache.org/repos/asf/camel/blob/cf9cd31e/components/camel-crypto-cms/src/test/java/org/apache/camel/component/crypto/cms/SpringComponentTest.java
----------------------------------------------------------------------
diff --git a/components/camel-crypto-cms/src/test/java/org/apache/camel/component/crypto/cms/SpringComponentTest.java b/components/camel-crypto-cms/src/test/java/org/apache/camel/component/crypto/cms/SpringComponentTest.java
new file mode 100644
index 0000000..d8ecd70
--- /dev/null
+++ b/components/camel-crypto-cms/src/test/java/org/apache/camel/component/crypto/cms/SpringComponentTest.java
@@ -0,0 +1,34 @@
+package org.apache.camel.component.crypto.cms;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.builder.RouteBuilder;
+import org.apache.camel.impl.JndiRegistry;
+import org.apache.camel.spring.SpringCamelContext;
+
+public class SpringComponentTest extends ComponentTest {
+
+ protected CamelContext createCamelContext() throws Exception {
+
+ return SpringCamelContext.springCamelContext("SpringCryptoCmsTests.xml");
+ }
+
+ @Override
+ protected JndiRegistry createRegistry() throws Exception {
+ return super.createRegistry();
+ }
+
+ protected RouteBuilder createRouteBuilder() throws Exception {
+ return new RouteBuilder() {
+ @Override
+ public void configure() {
+ // no routes added by default
+ }
+ };
+ }
+
+ @Override
+ protected RouteBuilder[] createRouteBuilders() throws Exception {
+ return new RouteBuilder[] {};
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/camel/blob/cf9cd31e/components/camel-crypto-cms/src/test/java/org/apache/camel/component/crypto/cms/util/KeystoreUtil.java
----------------------------------------------------------------------
diff --git a/components/camel-crypto-cms/src/test/java/org/apache/camel/component/crypto/cms/util/KeystoreUtil.java b/components/camel-crypto-cms/src/test/java/org/apache/camel/component/crypto/cms/util/KeystoreUtil.java
index 4381229..0798cac 100644
--- a/components/camel-crypto-cms/src/test/java/org/apache/camel/component/crypto/cms/util/KeystoreUtil.java
+++ b/components/camel-crypto-cms/src/test/java/org/apache/camel/component/crypto/cms/util/KeystoreUtil.java
@@ -32,7 +32,7 @@ public final class KeystoreUtil {
if (keystoreName.startsWith("test")) {
pw = "abcd1234";
} else {
- pw = "";
+ pw = "Abcd1234";
}
keystorePas.setPassword(pw);
return keystorePas;
http://git-wip-us.apache.org/repos/asf/camel/blob/cf9cd31e/components/camel-crypto-cms/src/test/resources/SpringCryptoCmsTests.xml
----------------------------------------------------------------------
diff --git a/components/camel-crypto-cms/src/test/resources/SpringCryptoCmsTests.xml b/components/camel-crypto-cms/src/test/resources/SpringCryptoCmsTests.xml
new file mode 100644
index 0000000..69ac433
--- /dev/null
+++ b/components/camel-crypto-cms/src/test/resources/SpringCryptoCmsTests.xml
@@ -0,0 +1,123 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor
+ license agreements. See the NOTICE file distributed with this work for additional
+ information regarding copyright ownership. The ASF licenses this file to
+ You under the Apache License, Version 2.0 (the "License"); you may not use
+ this file except in compliance with the License. You may obtain a copy of
+ the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required
+ by applicable law or agreed to in writing, software distributed under the
+ License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
+ OF ANY KIND, either express or implied. See the License for the specific
+ language governing permissions and limitations under the License. -->
+<beans xmlns="http://www.springframework.org/schema/beans"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="
+ http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
+ http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd
+ ">
+
+ <camelContext id="camel"
+ xmlns="http://camel.apache.org/schema/spring">
+ <onException>
+ <exception>org.apache.camel.component.crypto.cms.exception.CryptoCmsVerifierCertificateNotValidException
+ </exception>
+ <handled>
+ <constant>false</constant>
+ </handled>
+ <to uri="mock:exception" />
+ </onException>
+
+ <!-- START SNIPPET: two-signer -->
+ <route>
+ <from uri="direct:start" />
+ <to
+ uri="crypto-cms:sign://testsign?signer=#signer1&signer=#signer2&includeContent=true" />
+ <to
+ uri="crypto-cms:encrypt://testencrpyt?toBase64=true&recipient=#recipient1&contentEncryptionAlgorithm=DESede/CBC/PKCS5Padding&secretKeyLength=128" />
+ <to
+ uri="crypto-cms:decrypt://testdecrypt?fromBase64=true&keyStoreParameters=#keyStoreParameters1" />
+ <to
+ uri="crypto-cms:verify://testverify?keyStoreParameters=#keyStoreParameters1" />
+ <to uri="mock:result" />
+ </route>
+ <!-- END SNIPPET: two-signer -->
+
+
+ <!-- START SNIPPET: outdated -->
+ <route>
+ <from uri="direct:outdated" />
+ <to
+ uri="crypto-cms:sign://outdated?signer=#signerOutdated&includeContent=true" />
+ <to
+ uri="crypto-cms:verify://testverify?keyStoreParameters=#keyStoreParameters1" />
+ <to uri="mock:result" />
+ </route>
+ <!-- END SNIPPET: outdated -->
+
+ <!-- START SNIPPET: decryptAndVerify -->
+ <route>
+ <from uri="direct:decryptAndVerify" />
+ <to
+ uri="crypto-cms:decrypt://testdecrypt?fromBase64=true&keyStoreParameters=#keyStoreParameters1" />
+ <to
+ uri="crypto-cms:verify://testverify?keyStoreParameters=#keyStoreParameters1" />
+ <to uri="mock:result" />
+ </route>
+ <!-- END SNIPPET: decryptAndVerify -->
+
+ <!-- START SNIPPET: encryptDecryptOriginatorAttributes -->
+ <route>
+ <from uri="direct:encryptDecryptOriginatorAttributes" />
+ <to
+ uri="crypto-cms:encrypt://testencrpyt?toBase64=true&recipient=#recipient1&contentEncryptionAlgorithm=DESede/CBC/PKCS5Padding&secretKeyLength=128&originatorInformationProvider=#originatorInformationProvider1&unprotectedAttributesGeneratorProvider=#attributesGeneratorProvider1" />
+ <to
+ uri="crypto-cms:decrypt://testdecrypt?fromBase64=true&keyStoreParameters=#keyStoreParameters1" />
+ <to uri="mock:result" />
+ </route>
+ <!-- END SNIPPET: encryptDecryptOriginatorAttributes -->
+
+
+ </camelContext>
+
+ <keyStoreParameters xmlns="http://camel.apache.org/schema/spring"
+ id="keyStoreParameters1" resource="./keystore/system.jks"
+ password="Abcd1234" type="JCEKS" />
+
+ <bean id="recipient1"
+ class="org.apache.camel.component.crypto.cms.crypt.DefaultKeyTransRecipientInfo">
+ <property name="keyStoreParameters" ref="keyStoreParameters1" />
+ <property name="certificateAlias" value="rsa" />
+ </bean>
+
+ <bean id="signer1"
+ class="org.apache.camel.component.crypto.cms.sig.DefaultSignerInfo">
+ <property name="keyStoreParameters" ref="keyStoreParameters1" />
+ <property name="privateKeyAlias" value="rsa" />
+ <property name="signatureAlgorithm" value="SHA256withRSA" />
+ <property name="includeCertificates" value="true" />
+ </bean>
+
+ <bean id="signer2"
+ class="org.apache.camel.component.crypto.cms.sig.DefaultSignerInfo">
+ <property name="keyStoreParameters" ref="keyStoreParameters1" />
+ <property name="privateKeyAlias" value="dsa" />
+ <property name="signatureAlgorithm" value="SHA256withDSA" />
+ </bean>
+
+ <bean id="signerOutdated"
+ class="org.apache.camel.component.crypto.cms.sig.DefaultSignerInfo">
+ <property name="keyStoreParameters" ref="keyStoreParameters1" />
+ <property name="privateKeyAlias" value="outdated" />
+ <property name="signatureAlgorithm" value="SHA1withRSA" />
+ <property name="includeCertificates" value="false" />
+ </bean>
+
+ <bean id="originatorInformationProvider1"
+ class="org.apache.camel.component.crypto.cms.util.TestOriginatorInformationProvider" />
+
+ <bean id="attributesGeneratorProvider1"
+ class="org.apache.camel.component.crypto.cms.util.TestAttributesGeneratorProvider" />
+
+
+
+</beans>
http://git-wip-us.apache.org/repos/asf/camel/blob/cf9cd31e/components/camel-crypto-cms/src/test/resources/keystore/system.jks
----------------------------------------------------------------------
diff --git a/components/camel-crypto-cms/src/test/resources/keystore/system.jks b/components/camel-crypto-cms/src/test/resources/keystore/system.jks
index c9f894e..510c3a2 100644
Binary files a/components/camel-crypto-cms/src/test/resources/keystore/system.jks and b/components/camel-crypto-cms/src/test/resources/keystore/system.jks differ
Re: camel git commit: CAMEL-11438 spring tests added to crypto-cms
Posted by Claus Ibsen <cl...@gmail.com>.
Hi
You should not set default value to null, eg
+ @UriParam(label = "sign", defaultValue = "null")
should just be
+ @UriParam(label = "sign")
On Fri, Jul 28, 2017 at 4:25 PM, <fo...@apache.org> wrote:
> Repository: camel
> Updated Branches:
> refs/heads/master 8781be036 -> cf9cd31e7
>
>
> CAMEL-11438 spring tests added to crypto-cms
>
> Project: http://git-wip-us.apache.org/repos/asf/camel/repo
> Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/cf9cd31e
> Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/cf9cd31e
> Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/cf9cd31e
>
> Branch: refs/heads/master
> Commit: cf9cd31e705628588c774751150422c2bfdd9193
> Parents: 8781be0
> Author: Franz Forsthofer <fr...@sap.com>
> Authored: Fri Jul 28 16:21:32 2017 +0200
> Committer: Franz Forsthofer <fr...@sap.com>
> Committed: Fri Jul 28 16:21:32 2017 +0200
>
> ----------------------------------------------------------------------
> .../common/DefaultCryptoCmsConfiguration.java | 2 +-
> .../crypto/cms/sig/DefaultSignerInfo.java | 4 +-
> .../component/crypto/cms/ComponentTest.java | 7 +-
> .../crypto/cms/SpringComponentTest.java | 34 +++++
> .../component/crypto/cms/util/KeystoreUtil.java | 2 +-
> .../src/test/resources/SpringCryptoCmsTests.xml | 123 +++++++++++++++++++
> .../src/test/resources/keystore/system.jks | Bin 5697 -> 5697 bytes
> 7 files changed, 163 insertions(+), 9 deletions(-)
> ----------------------------------------------------------------------
>
>
> http://git-wip-us.apache.org/repos/asf/camel/blob/cf9cd31e/components/camel-crypto-cms/src/main/java/org/apache/camel/component/crypto/cms/common/DefaultCryptoCmsConfiguration.java
> ----------------------------------------------------------------------
> diff --git a/components/camel-crypto-cms/src/main/java/org/apache/camel/component/crypto/cms/common/DefaultCryptoCmsConfiguration.java b/components/camel-crypto-cms/src/main/java/org/apache/camel/component/crypto/cms/common/DefaultCryptoCmsConfiguration.java
> index 120ee22..7331aa5 100644
> --- a/components/camel-crypto-cms/src/main/java/org/apache/camel/component/crypto/cms/common/DefaultCryptoCmsConfiguration.java
> +++ b/components/camel-crypto-cms/src/main/java/org/apache/camel/component/crypto/cms/common/DefaultCryptoCmsConfiguration.java
> @@ -35,7 +35,7 @@ public abstract class DefaultCryptoCmsConfiguration {
> private KeyStore keyStore;
>
> /**
> - * Keystore containing signer private keys verifier public keys, encryptor
> + * Keystore containing signer private keys, verifier public keys, encryptor
> * public keys, decryptor private keys depending on the operation. Use
> * either this parameter or the parameter 'keystore'.
> */
>
> http://git-wip-us.apache.org/repos/asf/camel/blob/cf9cd31e/components/camel-crypto-cms/src/main/java/org/apache/camel/component/crypto/cms/sig/DefaultSignerInfo.java
> ----------------------------------------------------------------------
> diff --git a/components/camel-crypto-cms/src/main/java/org/apache/camel/component/crypto/cms/sig/DefaultSignerInfo.java b/components/camel-crypto-cms/src/main/java/org/apache/camel/component/crypto/cms/sig/DefaultSignerInfo.java
> index 0a02a03..19480ee 100644
> --- a/components/camel-crypto-cms/src/main/java/org/apache/camel/component/crypto/cms/sig/DefaultSignerInfo.java
> +++ b/components/camel-crypto-cms/src/main/java/org/apache/camel/component/crypto/cms/sig/DefaultSignerInfo.java
> @@ -50,10 +50,10 @@ public class DefaultSignerInfo extends DefaultCryptoCmsConfiguration implements
> @UriParam(label = "sign", defaultValue = "true")
> private boolean includeCertificates = true;
>
> - @UriParam(label = "sign,advanced")
> + @UriParam(label = "sign")
> private CMSAttributeTableGenerator signedAttributeGenerator = new DefaultSignedAttributeTableGenerator();
>
> - @UriParam(label = "sign,advanced", defaultValue = "null")
> + @UriParam(label = "sign", defaultValue = "null")
> private CMSAttributeTableGenerator unsignedAttributeGenerator;
>
> /**
>
> http://git-wip-us.apache.org/repos/asf/camel/blob/cf9cd31e/components/camel-crypto-cms/src/test/java/org/apache/camel/component/crypto/cms/ComponentTest.java
> ----------------------------------------------------------------------
> diff --git a/components/camel-crypto-cms/src/test/java/org/apache/camel/component/crypto/cms/ComponentTest.java b/components/camel-crypto-cms/src/test/java/org/apache/camel/component/crypto/cms/ComponentTest.java
> index 497aa70..2e7d8c9 100644
> --- a/components/camel-crypto-cms/src/test/java/org/apache/camel/component/crypto/cms/ComponentTest.java
> +++ b/components/camel-crypto-cms/src/test/java/org/apache/camel/component/crypto/cms/ComponentTest.java
> @@ -110,9 +110,8 @@ public class ComponentTest extends CamelTestSupport {
> recipient.setKeyStoreParameters(keystore);
>
> DefaultSignerInfo signerInfo = new DefaultSignerInfo();
> - signerInfo.setIncludeCertificates(true); // optional default
> - // value is true
> - signerInfo.setSignatureAlgorithm("SHA256withRSA"); // mandatory
> + signerInfo.setIncludeCertificates(true);
> + signerInfo.setSignatureAlgorithm("SHA256withRSA");
> signerInfo.setPrivateKeyAlias("rsa");
> signerInfo.setKeyStoreParameters(keystore);
>
> @@ -121,8 +120,6 @@ public class ComponentTest extends CamelTestSupport {
> signerInfo2.setPrivateKeyAlias("dsa");
> signerInfo2.setKeyStoreParameters(keystore);
>
> - getContext().addComponent("crypto-cms", new CryptoCmsComponent(getContext()));
> -
> simpleReg.put("keyStoreParameters", keystore);
> simpleReg.put("signer1", signerInfo);
> simpleReg.put("signer2", signerInfo2);
>
> http://git-wip-us.apache.org/repos/asf/camel/blob/cf9cd31e/components/camel-crypto-cms/src/test/java/org/apache/camel/component/crypto/cms/SpringComponentTest.java
> ----------------------------------------------------------------------
> diff --git a/components/camel-crypto-cms/src/test/java/org/apache/camel/component/crypto/cms/SpringComponentTest.java b/components/camel-crypto-cms/src/test/java/org/apache/camel/component/crypto/cms/SpringComponentTest.java
> new file mode 100644
> index 0000000..d8ecd70
> --- /dev/null
> +++ b/components/camel-crypto-cms/src/test/java/org/apache/camel/component/crypto/cms/SpringComponentTest.java
> @@ -0,0 +1,34 @@
> +package org.apache.camel.component.crypto.cms;
> +
> +import org.apache.camel.CamelContext;
> +import org.apache.camel.builder.RouteBuilder;
> +import org.apache.camel.impl.JndiRegistry;
> +import org.apache.camel.spring.SpringCamelContext;
> +
> +public class SpringComponentTest extends ComponentTest {
> +
> + protected CamelContext createCamelContext() throws Exception {
> +
> + return SpringCamelContext.springCamelContext("SpringCryptoCmsTests.xml");
> + }
> +
> + @Override
> + protected JndiRegistry createRegistry() throws Exception {
> + return super.createRegistry();
> + }
> +
> + protected RouteBuilder createRouteBuilder() throws Exception {
> + return new RouteBuilder() {
> + @Override
> + public void configure() {
> + // no routes added by default
> + }
> + };
> + }
> +
> + @Override
> + protected RouteBuilder[] createRouteBuilders() throws Exception {
> + return new RouteBuilder[] {};
> + }
> +
> +}
>
> http://git-wip-us.apache.org/repos/asf/camel/blob/cf9cd31e/components/camel-crypto-cms/src/test/java/org/apache/camel/component/crypto/cms/util/KeystoreUtil.java
> ----------------------------------------------------------------------
> diff --git a/components/camel-crypto-cms/src/test/java/org/apache/camel/component/crypto/cms/util/KeystoreUtil.java b/components/camel-crypto-cms/src/test/java/org/apache/camel/component/crypto/cms/util/KeystoreUtil.java
> index 4381229..0798cac 100644
> --- a/components/camel-crypto-cms/src/test/java/org/apache/camel/component/crypto/cms/util/KeystoreUtil.java
> +++ b/components/camel-crypto-cms/src/test/java/org/apache/camel/component/crypto/cms/util/KeystoreUtil.java
> @@ -32,7 +32,7 @@ public final class KeystoreUtil {
> if (keystoreName.startsWith("test")) {
> pw = "abcd1234";
> } else {
> - pw = "";
> + pw = "Abcd1234";
> }
> keystorePas.setPassword(pw);
> return keystorePas;
>
> http://git-wip-us.apache.org/repos/asf/camel/blob/cf9cd31e/components/camel-crypto-cms/src/test/resources/SpringCryptoCmsTests.xml
> ----------------------------------------------------------------------
> diff --git a/components/camel-crypto-cms/src/test/resources/SpringCryptoCmsTests.xml b/components/camel-crypto-cms/src/test/resources/SpringCryptoCmsTests.xml
> new file mode 100644
> index 0000000..69ac433
> --- /dev/null
> +++ b/components/camel-crypto-cms/src/test/resources/SpringCryptoCmsTests.xml
> @@ -0,0 +1,123 @@
> +<?xml version="1.0" encoding="UTF-8"?>
> +<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor
> + license agreements. See the NOTICE file distributed with this work for additional
> + information regarding copyright ownership. The ASF licenses this file to
> + You under the Apache License, Version 2.0 (the "License"); you may not use
> + this file except in compliance with the License. You may obtain a copy of
> + the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required
> + by applicable law or agreed to in writing, software distributed under the
> + License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
> + OF ANY KIND, either express or implied. See the License for the specific
> + language governing permissions and limitations under the License. -->
> +<beans xmlns="http://www.springframework.org/schema/beans"
> + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> + xsi:schemaLocation="
> + http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
> + http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd
> + ">
> +
> + <camelContext id="camel"
> + xmlns="http://camel.apache.org/schema/spring">
> + <onException>
> + <exception>org.apache.camel.component.crypto.cms.exception.CryptoCmsVerifierCertificateNotValidException
> + </exception>
> + <handled>
> + <constant>false</constant>
> + </handled>
> + <to uri="mock:exception" />
> + </onException>
> +
> + <!-- START SNIPPET: two-signer -->
> + <route>
> + <from uri="direct:start" />
> + <to
> + uri="crypto-cms:sign://testsign?signer=#signer1&signer=#signer2&includeContent=true" />
> + <to
> + uri="crypto-cms:encrypt://testencrpyt?toBase64=true&recipient=#recipient1&contentEncryptionAlgorithm=DESede/CBC/PKCS5Padding&secretKeyLength=128" />
> + <to
> + uri="crypto-cms:decrypt://testdecrypt?fromBase64=true&keyStoreParameters=#keyStoreParameters1" />
> + <to
> + uri="crypto-cms:verify://testverify?keyStoreParameters=#keyStoreParameters1" />
> + <to uri="mock:result" />
> + </route>
> + <!-- END SNIPPET: two-signer -->
> +
> +
> + <!-- START SNIPPET: outdated -->
> + <route>
> + <from uri="direct:outdated" />
> + <to
> + uri="crypto-cms:sign://outdated?signer=#signerOutdated&includeContent=true" />
> + <to
> + uri="crypto-cms:verify://testverify?keyStoreParameters=#keyStoreParameters1" />
> + <to uri="mock:result" />
> + </route>
> + <!-- END SNIPPET: outdated -->
> +
> + <!-- START SNIPPET: decryptAndVerify -->
> + <route>
> + <from uri="direct:decryptAndVerify" />
> + <to
> + uri="crypto-cms:decrypt://testdecrypt?fromBase64=true&keyStoreParameters=#keyStoreParameters1" />
> + <to
> + uri="crypto-cms:verify://testverify?keyStoreParameters=#keyStoreParameters1" />
> + <to uri="mock:result" />
> + </route>
> + <!-- END SNIPPET: decryptAndVerify -->
> +
> + <!-- START SNIPPET: encryptDecryptOriginatorAttributes -->
> + <route>
> + <from uri="direct:encryptDecryptOriginatorAttributes" />
> + <to
> + uri="crypto-cms:encrypt://testencrpyt?toBase64=true&recipient=#recipient1&contentEncryptionAlgorithm=DESede/CBC/PKCS5Padding&secretKeyLength=128&originatorInformationProvider=#originatorInformationProvider1&unprotectedAttributesGeneratorProvider=#attributesGeneratorProvider1" />
> + <to
> + uri="crypto-cms:decrypt://testdecrypt?fromBase64=true&keyStoreParameters=#keyStoreParameters1" />
> + <to uri="mock:result" />
> + </route>
> + <!-- END SNIPPET: encryptDecryptOriginatorAttributes -->
> +
> +
> + </camelContext>
> +
> + <keyStoreParameters xmlns="http://camel.apache.org/schema/spring"
> + id="keyStoreParameters1" resource="./keystore/system.jks"
> + password="Abcd1234" type="JCEKS" />
> +
> + <bean id="recipient1"
> + class="org.apache.camel.component.crypto.cms.crypt.DefaultKeyTransRecipientInfo">
> + <property name="keyStoreParameters" ref="keyStoreParameters1" />
> + <property name="certificateAlias" value="rsa" />
> + </bean>
> +
> + <bean id="signer1"
> + class="org.apache.camel.component.crypto.cms.sig.DefaultSignerInfo">
> + <property name="keyStoreParameters" ref="keyStoreParameters1" />
> + <property name="privateKeyAlias" value="rsa" />
> + <property name="signatureAlgorithm" value="SHA256withRSA" />
> + <property name="includeCertificates" value="true" />
> + </bean>
> +
> + <bean id="signer2"
> + class="org.apache.camel.component.crypto.cms.sig.DefaultSignerInfo">
> + <property name="keyStoreParameters" ref="keyStoreParameters1" />
> + <property name="privateKeyAlias" value="dsa" />
> + <property name="signatureAlgorithm" value="SHA256withDSA" />
> + </bean>
> +
> + <bean id="signerOutdated"
> + class="org.apache.camel.component.crypto.cms.sig.DefaultSignerInfo">
> + <property name="keyStoreParameters" ref="keyStoreParameters1" />
> + <property name="privateKeyAlias" value="outdated" />
> + <property name="signatureAlgorithm" value="SHA1withRSA" />
> + <property name="includeCertificates" value="false" />
> + </bean>
> +
> + <bean id="originatorInformationProvider1"
> + class="org.apache.camel.component.crypto.cms.util.TestOriginatorInformationProvider" />
> +
> + <bean id="attributesGeneratorProvider1"
> + class="org.apache.camel.component.crypto.cms.util.TestAttributesGeneratorProvider" />
> +
> +
> +
> +</beans>
>
> http://git-wip-us.apache.org/repos/asf/camel/blob/cf9cd31e/components/camel-crypto-cms/src/test/resources/keystore/system.jks
> ----------------------------------------------------------------------
> diff --git a/components/camel-crypto-cms/src/test/resources/keystore/system.jks b/components/camel-crypto-cms/src/test/resources/keystore/system.jks
> index c9f894e..510c3a2 100644
> Binary files a/components/camel-crypto-cms/src/test/resources/keystore/system.jks and b/components/camel-crypto-cms/src/test/resources/keystore/system.jks differ
>
--
Claus Ibsen
-----------------
http://davsclaus.com @davsclaus
Camel in Action 2: https://www.manning.com/ibsen2