diff --git a/README.md b/README.md index eab7b80..93da64a 100644 --- a/README.md +++ b/README.md @@ -71,10 +71,10 @@ The master key is looked up from either a Maven property with name `AEM_KEY` (or + encryptedValue="${vltattributeescape.vltaemencrypt.env.MY_SECRET}" /> ``` -This will encrypt the value provided through the environment variable `MY_SECRET`. +This will encrypt the value provided through the environment variable `MY_SECRET` and afterwards [escape the encrypted value according to FileVault DocView rules][filevault-escape]. In order to use specific keys (e.g. when targeting multiple environments with different master keys in the same build) use a suffix after `vltaemencrypt` like `vltaemencryptprod.env.MY_SECRET`. This will encrypt `MY_SECRET` with the master key provided in Maven property with name `AEM_KEY_PROD` or a same named environment variable (in that order). Note that the *suffix* (`prod` in this case) is automatically converted to uppercase letters before being used in the environment variable/property name. @@ -96,4 +96,5 @@ the United States and/or other countries. [aem-cryptosupport]: https://developer.adobe.com/experience-manager/reference-materials/6-5/javadoc/com/adobe/granite/crypto/CryptoSupport.html [groovyconsole]: https://github.com/orbinson/aem-groovy-console [filevault-package-maven-plugin]: https://jackrabbit.apache.org/filevault-package-maven-plugin/index.html -[filevault-filtering]: https://jackrabbit.apache.org/filevault-package-maven-plugin/filtering.html +[filevault-filtering]: https://jackrabbit.apache.org/filevault-package-maven-plugin/filtering.html#Filtering_Extensions +[filevault-escape]: https://jackrabbit.apache.org/filevault/docview.html#Escaping diff --git a/pom.xml b/pom.xml index d5f0cf4..4fa921a 100644 --- a/pom.xml +++ b/pom.xml @@ -73,16 +73,19 @@ javax.inject javax.inject 1 + provided org.apache.maven maven-core 3.1.0 + provided org.apache.jackrabbit filevault-package-maven-plugin - 1.4.0-SNAPSHOT + 1.4.0 + provided * @@ -94,6 +97,7 @@ org.codehaus.plexus plexus-interpolation 1.21 + provided org.junit.jupiter @@ -104,6 +108,7 @@ org.slf4j slf4j-simple ${version.slf4j} + test @@ -254,6 +259,7 @@ true verify true + verify diff --git a/src/it/simple-filter/jcr_root/apps/foo/.content.xml b/src/it/simple-filter/jcr_root/apps/foo/.content.xml index eb4556a..73bd507 100644 --- a/src/it/simple-filter/jcr_root/apps/foo/.content.xml +++ b/src/it/simple-filter/jcr_root/apps/foo/.content.xml @@ -2,5 +2,5 @@ \ No newline at end of file +encryptedValue="${vltattributeescape.vltaemencrypt.customProperty}" +encryptedValueCustom="${vltattributeescape.vltaemencryptcustom.customProperty}" /> \ No newline at end of file diff --git a/src/it/simple-filter/pom.xml b/src/it/simple-filter/pom.xml index a680960..12fbc96 100644 --- a/src/it/simple-filter/pom.xml +++ b/src/it/simple-filter/pom.xml @@ -37,7 +37,7 @@ org.apache.jackrabbit filevault-package-maven-plugin - 1.4.0-SNAPSHOT + 1.4.0 true true diff --git a/src/it/simple-filter/verify.groovy b/src/it/simple-filter/verify.groovy index 2fdfeab..93c8008 100644 --- a/src/it/simple-filter/verify.groovy +++ b/src/it/simple-filter/verify.groovy @@ -8,8 +8,8 @@ try (ZipFile zipFile = new ZipFile(file)) { try (InputStream input = zipFile.getInputStream(zipEntry)) { def root = new XmlSlurper().parse(input) assert(root.@escapedValue == "plainText") - assert(root.@encryptedValue.text() ==~ $/\{[a-z0-9]*\}/$) - assert(root.@encryptedValueCustom.text() ==~ $/\{[a-z0-9]*\}/$) + assert(root.@encryptedValue.text() ==~ $/\\\{[a-z0-9]*\}/$) + assert(root.@encryptedValueCustom.text() ==~ $/\\\{[a-z0-9]*\}/$) assert(root.@encryptedCustom.text() != root.@encryptedValueCustom.text()) } } \ No newline at end of file