General setup
To setup the JADE JITL job with the Credential Store, we need KeePassX version 1.0 DB and jade_settings.ini file.
NOTE: - The KeePassX DB and the jade_settings.ini file can be stored anywhere on the filesystem that is accessible to JobScheduler. - The JADE JITL job can be used as standalone job or as order job. - To keep the example simple we have put the KeePassX DB and jade_settings.ini at JOBSCHEDULER_HOME/examples and configured the JADE JITL job as a standalone job. - JADE only supports KeePassX DB version 1.0 - In the JADE profiles set the KeePassX DB's absolute path as per as your JOBSCHEDULER_HOME - The Keepassx DB version 1.0 is the version for an encrypted file/database created by KeePassx called *kdb. User can chose from many other credential encryption software to manage the *kdb., but ''JS supports only kdb files created by KeePassx'',as of now KeePassX by default generate kdb version 1.0 files. - The feature credential store is supported in/after version JADE 1.7.4177 IMP: - IMP The KeePassX files created by version 1.0 are not compatible with the version 2.0 clients. Version 1.0 files edited/updated with version 2.0 Keepass client will render the kdb file unusable as JADE credential store.
1. Create an "examples" directory at the root of the JobScheduler installation or JOBSCHEDULER_HOME (NOTE : this is at the same level as bin ,config , logs
)
2. Create a KeePassX version 1.0 DB with the entries containing the server authentication data i.e. hostname, username, password etc in the JOBSCHEDULER_HOME/examples directory, as shown in the folowing screen shot:
3. Create a jade_settings.ini file in the JOBSCHEDULER_HOME/examples directory and insert the profile listed below in the jade_settings.ini file.
Copy from Localhost to FTP server
In this use case JADE will transfer all the files present in the ${TEMP}/source directory on the localhost to the /home/test/inbound directory on the FTP server.
The FTP server settings are defined in the KeePassX DB keepassX-test.kdb as title sos/server/mp.sos .
JADE profile
[copy_localhost2server_with_cs] file_spec = .* operation = copy verbose = 9 ;; source_protocol = local source_host = localhost source_dir = $\{TEMP\}/source source_make_dirs = true ;; target_use_credential_Store = true target_CredentialStore_FileName = C:\Program Files\sos-berlin.com\jobscheduler.1.6.4043\djsmp02_4445\examples\keepassX-test.kdb target_CredentialStore_password = testing target_CredentialStore_KeyPath = sos/server/mp.sos ;; target_dir = /home/test/inbound target_make_dirs = true target_protocol = ftp target_transfer_mode = ascii
JobScheduler jade_copy_localhost2server_with_cs.job.xml job
The JobScheduler jade_copy_localhost2server_with_cs.job.xml JITL job can be configured with two parameters - profile and settings:
<?xml version="1.0" encoding="ISO-8859-1"?> <job title="Localhost to FTP server copy (API Job for JobScheduler Advanced Data Exchange)" order="no" name="jade_copy_localhost2server_with_cs"> <settings > <log_level ><![CDATA[debug9]]></log_level> </settings> <description > <include file="jobs/jadeJob.xml"/> </description> <params > <param name="profile" value="copy_localhost2server_with_cs"/> <param name="settings" value="$\{SCHEDULER_HOME\}/examples/jade_settings.ini"/> </params> <script language="java" java_class="sos.scheduler.jade.JadeJob"/> <run_time /> </job>
JADE Command Line Interface (CLI) client example
The jade_settings.ini profiles can be called from JobScheduler JITL job or from the JADE CLI client.
See the JADE CLI client example below.
C:\Program Files\sos-berlin.com\jade\jade_client_1.6.4043\bin>set CS_HOME=C:\Program Files\sos-berlin.com\jobscheduler.1.6.4043\djsmp02_4445\examples C:\Program Files\sos-berlin.com\jade\jade_client_1.6.4043\bin>jade.cmd -settings="%CS_HOME%"/jade_settings.ini -profile=copy_server2localhost_with_cs
Copy from FTP server to localhost
JADE profile
[copy_server2localhost_with_cs] file_spec = .* operation = copy verbose = 9 ;; source_use_credential_Store = true source_CredentialStore_FileName = C:\Program Files\sos-berlin.com\jobscheduler.1.6.4043\djsmp02_4445\examples\keepassX-test.kdb source_CredentialStore_password = testing source_CredentialStore_KeyPath = sos/server/homer2.sos ;; source_dir = /home/test/outbound source_make_dirs = true source_protocol = ftp source_transfer_mode = ascii ;; target_protocol = local target_host = localhost target_dir = $\{TEMP\}/target target_make_dirs = true
JobScheduler jade_copy_server2localhost_with_cs.job.xml job
<?xml version="1.0" encoding="ISO-8859-1"?> <job title="FTP Server to Localhost Copy (API Job for JobScheduler Advanced Data Exchange)" order="no" name="jade_copy_server2localhost_with_cs"> <settings > <log_level ><![CDATA[debug9]]></log_level> </settings> <description > <include file="jobs/jadeJob.xml"/> </description> <params > <param name="profile" value="copy_server2localhost_with_cs"/> <param name="settings" value="$\{SCHEDULER_HOME\}/examples/jade_settings.ini"/> </params> <script language="java" java_class="sos.scheduler.jade.JadeJob"/> <run_time /> </job>
JADE Command Line Interface (CLI) client example
The jade_settings.ini profiles can be called from JobScheduler JITL job or from the JADE CLI client.
See the JADE CLI client example below.
C:\Program Files\sos-berlin.com\jade\jade_client_1.6.4043\bin>set CS_HOME=C:\Program Files\sos-berlin.com\jobscheduler.1.6.4043\djsmp02_4445\examples C:\Program Files\sos-berlin.com\jade\jade_client_1.6.4043\bin>jade.cmd -settings="%CS_HOME%"/jade_settings.ini -profile=copy_server2localhost_with_cs
Point-2-Point FTP server to FTP server copy
A very unique feature of JADE is the ability to copy data from server A to server B without touch down (Point-2-Point / P2P file transfer).
You can read more about P2P transfer here: JADE P2P.
In this usecase JADE will transfer all the files from the /home/test/outbound directory on server homer2 to the /home/test/inbound directory on server mp.sos.
JADE profile
[copy_p2p_with_cs] file_spec = .* operation = copy verbose = 9 ;; source_use_credential_Store = true source_CredentialStore_FileName = C:\Program Files\sos-berlin.com\jobscheduler.1.6.4043\djsmp02_4445\examples\keepassX-test.kdb source_CredentialStore_password = testing source_CredentialStore_KeyPath = sos/server/homer2.sos source_dir = /home/test/outbound source_make_dirs = true source_protocol = ftp source_transfer_mode = ascii ;; target_use_credential_Store = true target_CredentialStore_FileName = C:\Program Files\sos-berlin.com\jobscheduler.1.6.4043\djsmp02_4445\examples\keepassX-test.kdb target_CredentialStore_password = testing target_CredentialStore_KeyPath = sos/server/mp.sos target_dir = /home/test/inbound target_make_Dirs = true target_protocol = ftp target_transfer_mode = ascii
JobScheduler jade_p2p_with_cs.job.xml job
<?xml version="1.0" encoding="ISO-8859-1"?> <job title="Point-2-Point Transfer ( API Job for JobScheduler Advanced Data Exchange)" order="no" name="jade_p2p_with_cs"> <settings > <log_level ><![CDATA[debug9]]></log_level> </settings> <description > <include file="jobs/jadeJob.xml"/> </description> <params > <param name="profile" value="copy_p2p_with_cs"/> <param name="settings" value="$\{SCHEDULER_HOME\}/examples/jade_settings.ini"/> </params> <script language="java" java_class="sos.scheduler.jade.JadeJob"/> <run_time /> </job>
JADE Command Line Interface (CLI) client example
The jade_settings.ini profiles can be called from JobScheduler JITL job or from the JADE CLI client.
See the JADE CLI client example below.
C:\Program Files\sos-berlin.com\jade\jade_client_1.6.4043\bin>set CS_HOME=C:\Program Files\sos-berlin.com\jobscheduler.1.6.4043\djsmp02_4445\examples C:\Program Files\sos-berlin.com\jade\jade_client_1.6.4043\bin>jade.cmd -settings="%CS_HOME%"/jade_settings.ini -profile=copy_p2p_with_cs
Copy from Localhost to SFTP server
For SFTP protocol JADE can either use password authentication or with a private/public key authentication.
The SFTP authentication method can be specifed using parameter target/sourcessh_auth_method = _password or publickey
JADE profile
[copy_localhost2SftpServer_with_cs] file_spec = .* operation = copy verbose = 9 ;; source_protocol = local source_host = localhost source_dir = $\{TEMP\}/source source_make_dirs = true ;; target_use_credential_Store = true target_CredentialStore_FileName = C:\Program Files\sos-berlin.com\jobscheduler.1.6.4043\djsmp02_4445\examples\keepassX-test.kdb target_CredentialStore_password = testing target_CredentialStore_KeyPath = sos/server/sftp_homer.sos ;; target_protocol = sftp target_dir = /home/test/inbound target_ssh_auth_method = password target_make_dirs = true target_transfer_mode = ascii
JobScheduler jade_copy_localhost2SftpServer_with_cs job
<?xml version="1.0" encoding="ISO-8859-1"?> <job title="Localhost to SFTP server copy (API Job for JobScheduler Advanced Data Exchange)" order="no" name="jade_copy_localhost2SftpServer_with_cs"> <settings > <log_level ><![CDATA[debug9]]></log_level> </settings> <description > <include file="jobs/jadeJob.xml"/> </description> <params > <param name="profile" value="copy_localhost2SftpServer_with_cs"/> <param name="settings" value="$\{SCHEDULER_HOME\}/examples/jade_settings.ini"/> </params> <script language="java" java_class="sos.scheduler.jade.JadeJob"/> <run_time /> </job>
JADE Command Line Interface (CLI) client example
The jade_settings.ini profiles can be called from JobScheduler JITL job or from the JADE CLI client.
See the JADE CLI client example below.
C:\Program Files\sos-berlin.com\jade\jade_client_1.6.4043\bin>set CS_HOME=C:\Program Files\sos-berlin.com\jobscheduler.1.6.4043\djsmp02_4445\examples C:\Program Files\sos-berlin.com\jade\jade_client_1.6.4043\bin>jade.cmd -settings="%CS_HOME%"/jade_settings.ini -profile=copy_localhost2SftpServer_with_cs