Running trusted tasks with your custom signature - Cloud

Running trusted artifacts on Remote Engine

Version
Cloud
Language
English (United States)
Product
Talend Cloud
Module
Talend Management Console
Talend Remote Engine
Talend Studio
Content
Security

Talend Studio signs Jobs before they are deployed to Talend Cloud Management Console using Java Jar signing (https://docs.oracle.com/javase/8/docs/technotes/guides/jar/jar.html#Signed_JAR_File).

Instead of using the default Studio signing key, it is possible to use a custom KeyStore for signature creation and validation.

The META-INF folder of the zip file contains a .SF file with the SHA-256 digests of every file contained in the zip, as well as the digest of the manifest itself. The signing key itself is bundled with Talend Studio. This signs the .SF file and outputs the signature into a .RSA file in META-INF. The signature algorithm used is RSA-SHA256.

Before you begin

  • Your Studio version is v8.0 R2022-06 and onwards.
  • Your Remote Engine is v2.12.0 and onwards.
  • You have generated a custom Java KeyStore using a third-party Java keytool.

Procedure

  1. Configure custom Java KeyStore (JKS) for Job artifact signature.
    • In Studio, add your JKS key as explained in Configuring custom Java KeyStore for Job artifact signature.
    • In a continuous integration environment, add the following parameters to your build:
      • -Dsigner.path: the path to your custom Java KeyStore
      • -Dsigner.keystore.password: the KeyStore password, either Maven-encrypted or in plain text
      • -Dsigner.key.password: the key password, either Maven-encrypted or in plain text
      • -Dsigner.key.alias: the alias name associated with your KeyStore.
  2. Publish the signed artifact to Cloud.
  3. Enable your Remote Engine to verify the custom signature and set up the same JKS configuration there, as explained in Verifying artifact signature with a custom signing key.
  4. If not done yet, create a task for this artifact.
  5. Run this task on the engine for which you enabled the verification of custom signature previously.

Results

The KeyStore is verified and the task runs successfully.
If the verification fails, for example, signature of the artifact does not match the one used by your engine, the task run fails with a message reading like this: