Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* added some tests for codesigning * implemented FileSigner and KeyProvider classes for signing files. * added more config options for setting up package signing * fixed build errors. Now run integration tests on jdk 8, 11, and 17 * partial check-in with package sign * fixed file signer unit test * added support for providing trusted certificates in app bundle separate from the signing certificate. Added support for certificate chains which allow more complex signing workflows involving a root certificate with a long lifespan and a signing certificate with a short lifespan. * updated keystore providers to handle root certs * added support for environment variable JDEPLOY_DEVELOPER_CA_ID which can be the alias for a root certificate that is used in signed bundles to verify package signatures. The difference between this and the signing certificate, is that the root certificate does not need to have the accompanying private key on the deployment machine - it is used solely to allow the app bundle to validate the signature of packages. The root certificate will typically have a very long lifespan (e.g. 10 years), whereas the signing certificate will have a shorter expiry. * added certificate fingerprints to package.json and app.xml for mac builds so that we can easily see at runtime if a version can be verified by the bundle. the app.xml will have a fingerprint of the root certificate, and the package.json will have fingerprints for the full signing certificate chain. if the root certificate of the bundle is in the signing certificate chain of the package, then it can be verified. * added certificate pinning support * added verify-package cli command. untested yet * added unit test for VerifyPackageService * added ability to pass app.xml as --keystore parameter to the verify-package command in this case it will use the trusted-certificates attribute * added integration test or verify-package cli command * added dmg command * added support for JDEPLOY_SOURCE environemnt variable in dmg command to set the source in the app.xml * fix compile error * fixed another compile error * removed noise in maven logs * fixed issue with version in dmg command * fix compile error * fixed versioning for dmg * fixed compile error * updated launchers --------- Co-authored-by: Steve Hannah <[email protected]>
- Loading branch information