tSetKeystore - 6.1

Talend Components Reference Guide

EnrichVersion
6.1
EnrichProdName
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Open Studio for Big Data
Talend Open Studio for Data Integration
Talend Open Studio for Data Quality
Talend Open Studio for ESB
Talend Open Studio for MDM
Talend Real-Time Big Data Platform
task
Data Governance
Data Quality and Preparation
Design and Development
EnrichPlatform
Talend Studio

Function

tSetKeystore submits authentication data of a truststore with or without keystore to validation for the SSL connection.

Purpose

This component allows you to set the authentication data type between PKCS 12 and JKS.

If you have subscribed to one of the Talend solutions with Big Data, this component is available in the following types of Jobs:

tSetKeystore properties

Component family

Internet

 

Basic settings

TrustStore type

Select the type of the TrustStore to be used. It may be PKCS 12 or JKS.

 

TrustStore file

Type in the path, or browse to the certificate TrustStore file (including filename) that contains the list of certificates that the client trusts.

 

TrustStore password

Type in the password used to check the integrity of the TrustStore data.

 

Need Client authentication

Select this check box to validate the keystore data. Once doing so, you need complete three fields:

- KeyStore type: select the type of the keystore to be used. It may be PKCS 12 or JKS.

- KeyStore file: type in the path, or browse to the file (including filename) containing the keystore data.

- KeyStore password: type in the password for this keystore.

 

Check server identity

Select this check box to make the Job verify the match between the hostname of the URL and the hostname of the server. If they mismatch, the verification mechanism asks whether this connection should be allowed.

Advanced settings

tStatCatcher Statistics

Select this check box to gather the Job processing metadata at a Job level as well as at each component level.

Global Variables

ERROR_MESSAGE: the error message generated by the component when an error occurs. This is an After variable and it returns a string. This variable functions only if the Die on error check box is cleared, if the component has this check box.

A Flow variable functions during the execution of a component while an After variable functions after the execution of the component.

To fill up a field or expression with a variable, press Ctrl + Space to access the variable list and choose the variable to use from it.

For further information about variables, see Talend Studio User Guide.

Usage

This component is used standalone.

Connections

Outgoing links (from this component to another):

Trigger: Run if; On Subjob Ok, On Subjob Error, On Component Ok; On Component Error.

Incoming links (from one component to this one):

Trigger: Run if, On Subjob Ok, On Component Ok, On Component Error.

For further information regarding connections, see Talend Studio User Guide.

Limitation

n/a.

Scenario: Extracting customer information from a private WSDL file

This scenario describes a three-component Job that connects to a private WSDL file in order to extract customer information.

The WSDL file used in this Job accesses the corresponding web service under the SSL protocol. For this purpose, the most relative code in this file reads as follows :

<wsdl:port name="CustomerServiceHttpSoap11Endpoint"
binding="ns:CustomerServiceSoap11Binding">
            <soap:address location="https://192.168.0.22:8443/axis2/services/CustomerService.CustomerServiceHttpSoap11Endpoint/"/>
        </wsdl:port>

Accordingly, we enter the following code in the server.xml file of Tomcat:

<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
               maxThreads="150" scheme="https" secure="true"
               clientAuth="true" sslProtocol="TLS" 
     keystoreFile="D:/server.keystore" keystorePass="password"
     keystoreType="JKS"
     truststoreFile="D:/server.p12" truststorePass="password"
     truststoreType="PKCS12"
    />

So we need keystore files to connect to this WSDL file. To replicate this Job, proceed as follows:

  • Drop the following components from the Palette onto the design workspace: tSetKeystore, tWebService, and tLogRow.

  • Right-click tSetKeystore to open its contextual menu.

  • In this menu, select Trigger > On Subjob Ok to connect this component to tWebService.

  • Right-click tWebService to open its contextual menu.

  • In this menu, select Row > Main to connect this component to tLogRow.

  • Double-click tSetKeystore to open its Basic settings view and define the component properties.

  • In the TrustStore type field, select PKCS12 from the drop-down list.

  • In the TrustStore file field, browse to the corresponding truststore file. Here, it is server.p12.

  • In the TrustStore password field, type in the password for this truststore file. In this example, it is password.

  • Select the Need Client authentication check box to activate the keystore configuration fields.

  • In the KeyStore type field, select JKS from the drop-down list.

  • In the KeyStore file field, browse to the corresponding keystore file. Here, it is server.keystore.

  • Double-click tWebService to open the component editor, or select the component in the design workspace and in the Basic settings view, click the three-dot button next to Service configuration.

  • In the WSDL field, browse to the private WSDL file to be used. In this example, it is CustomerService.wsdl.

  • Click the refresh button next to the WSDL field to retrieve the WSDL description and display it in the fields that follow.

  • In the Port Name list, select the port you want to use, CustomerServiceHttpSoap11Endpoint in this example.

  • In the Operation list, select the service you want to use. In this example the selected service is getCustomer(parameters):Customer.

  • Click Next to open a new view in the editor.

In the panel to the right of the Input mapping view, the input parameter of the service displays automatically. However, you can add other parameters if you select [+] parameters and then click the plus button on top to display the [Parameter Tree] dialog box where you can select any of the listed parameters.

The Web service in this example has only one input parameter, ID.

  • In the Expression column of the parameters.ID row, type in the customer ID of your interest between quotation marks. In this example, it is A00001.

  • Click Next to open a new view in the editor.

In the Element list to the left of the view, the output parameter of the web service displays automatically. However, you can add other parameters if you select [+] parameters and then click the plus button on top to display the [Parameter Tree] dialog box where you can select any of the parameters listed.

The Web service in this example has four output parameter: return.address, return.email, return.name and return.phone.

You now need to create a connection between the output parameter of the defined Web service and the schema of the output component. To do so:

  • In the panel to the right of the view, click the three-dot button next to Edit Schema to open a dialog box in which you can define the output schema.

  • In the schema editing dialog box, click the plus button to add four columns to the output schema.

  • Click in each column and type in the new names, Name, Phone, Email and Address in this example. This will retrieve the customer information of your interest.

  • Click OK to validate your changes and to close the schema editing dialog box.

  • In the Element list to the right of the editor, drag each parameter to the field that corresponds to the column you have defined in the schema editing dialog box.

Note

If available, use the Auto map! button, located at the bottom left of the interface, to carry out the mapping operation automatically.

  • Click OK to validate your changes and to close the editor.

  • In the design workspace, double-click tLogRow to open its Basic settings view and define its properties.

  • Click Sync columns to retrieve the schema from the preceding component.

  • Save your Job and press F6 to execute it.

The information of the customer with ID A00001 is returned and displayed in the console of Talend Studio.

tSetKeystore properties in Spark Batch Jobs

Component family

Authentication

 

Basic settings

TrustStore type

Select the type of the TrustStore to be used. It may be PKCS 12 or JKS.

 

TrustStore file

Type in the path, or browse to the certificate TrustStore file (including filename) that contains the list of certificates that the client trusts.

 

TrustStore password

Type in the password used to check the integrity of the TrustStore data.

 

Need Client authentication

Select this check box to validate the keystore data. Once doing so, you need complete three fields:

- KeyStore type: select the type of the keystore to be used. It may be PKCS 12 or JKS.

- KeyStore file: type in the path, or browse to the file (including filename) containing the keystore data.

- KeyStore password: type in the password for this keystore.

 

Check server identity

Select this check box to make the Job verify the match between the hostname of the URL and the hostname of the server. If they mismatch, the verification mechanism asks whether this connection should be allowed.

Usage in Spark Batch Jobs

In a Talend Spark Batch Job, this component is used standalone. It generates native Spark code that can be executed directly in a Spark cluster.

This component, along with the Spark Batch component Palette it belongs to, appears only when you are creating a Spark Batch Job.

Note that in this documentation, unless otherwise explicitly stated, a scenario presents only Standard Jobs, that is to say traditional Talend data integration Jobs.

Spark Connection

You need to use the Spark Configuration tab in the Run view to define the connection to a given Spark cluster for the whole Job. In addition, since the Job expects its dependent jar files for execution, one and only one file system related component from the Storage family is required in the same Job so that Spark can use this component to connect to the file system to which the jar files dependent on the Job are transferred:

This connection is effective on a per-Job basis.

Log4j

If you are using a subscription-based version of the Studio, the activity of this component can be logged using the log4j feature. For more information on this feature, see Talend Studio User Guide.

For more information on the log4j logging levels, see the Apache documentation at http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/Level.html.

Related scenarios

No scenario is available for the Spark Batch version of this component yet.

tSetKeystore properties in Spark Streaming Jobs

Warning

The streaming version of this component is available in the Palette of the studio on the condition that you have subscribed to Talend Real-time Big Data Platform or Talend Data Fabric.

Component family

Authentication

 

Basic settings

TrustStore type

Select the type of the TrustStore to be used. It may be PKCS 12 or JKS.

 

TrustStore file

Type in the path, or browse to the certificate TrustStore file (including filename) that contains the list of certificates that the client trusts.

 

TrustStore password

Type in the password used to check the integrity of the TrustStore data.

 

Need Client authentication

Select this check box to validate the keystore data. Once doing so, you need complete three fields:

- KeyStore type: select the type of the keystore to be used. It may be PKCS 12 or JKS.

- KeyStore file: type in the path, or browse to the file (including filename) containing the keystore data.

- KeyStore password: type in the password for this keystore.

 

Check server identity

Select this check box to make the Job verify the match between the hostname of the URL and the hostname of the server. If they mismatch, the verification mechanism asks whether this connection should be allowed.

Usage in Spark Streaming Jobs

In a Talend Spark Streaming Job, this component is used standalone. It generates native Spark code that can be executed directly in a Spark cluster.

This component, along with the Spark Streaming component Palette it belongs to, appears only when you are creating a Spark Streaming Job.

Note that in this documentation, unless otherwise explicitly stated, a scenario presents only Standard Jobs, that is to say traditional Talend data integration Jobs.

Spark Connection

You need to use the Spark Configuration tab in the Run view to define the connection to a given Spark cluster for the whole Job. In addition, since the Job expects its dependent jar files for execution, one and only one file system related component from the Storage family is required in the same Job so that Spark can use this component to connect to the file system to which the jar files dependent on the Job are transferred:

This connection is effective on a per-Job basis.

Log4j

If you are using a subscription-based version of the Studio, the activity of this component can be logged using the log4j feature. For more information on this feature, see Talend Studio User Guide.

For more information on the log4j logging levels, see the Apache documentation at http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/Level.html.

Related scenarios

No scenario is available for the Spark Streaming version of this component yet.