General set-up for example
To setup the YADE JITL job with the Credential Store, we need KeePassX version 1.0 DB and the jade_settings.ini file.
- The KeePassX DB and the jade_settings.ini file can be stored anywhere on the file system that is accessible to JobScheduler. - The YADE 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 YADE JITL job as a standalone job. - In the YADE profiles set the KeePassX DB's absolute path as per as your JOBSCHEDULER_HOME, but relative path is also possible. - The feature credential store is supported in/after version YADE 1.7.4177
- The Keepassx DB version 1.0 is the version for an encrypted file/database created by KeePassx called *kdb.
JS supports only kdb files created by KeePassx, as of now KeePassX by default generate kdb version 1.0 files. - 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 YADE credential store.
1. Create an examples directory at the root of the JobScheduler installation or $SCHEDULER_HOME.
2. Create a KeePassX version 1.0 database with the entries containing the server authentication data, i.e. hostname, username, password etc in the $SCHEDULER_HOME/examples directory, as shown in the following screenshot:
3. Create a jade_settings.ini file in the $SCHEDULER_HOME/examples directory and add the profile listed below to the jade_settings.ini file.
Copy from localhost to FTP server
In this use case YADE 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 database keepassX-test.kdb in an entry with the title sos/server/mp.sos.
YADE 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">
<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>
YADE Command Line Interface (CLI) Client example
The jade_settings.ini profiles can be called from the JobScheduler JITL job or from the YADE CLI Client.
See the YADE 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
YADE 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">
<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>
YADE Command Line Interface (CLI) Client example
The jade_settings.ini profiles can be called from the JobScheduler JITL job or from the YADE CLI Client.
See the YADE 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
Server-2-Server copy
A unique feature of YADE is the ability to copy data from server A to server B without touchdown (Server-2-Server / S2S file transfer).
In this use case YADE will transfer all the files from the /home/test/outbound directory on server homer2 to the /home/test/inbound directory on server mp.sos.
YADE 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">
<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>
YADE Command Line Interface (CLI) client example
The jade_settings.ini profiles can be called from the JobScheduler JITL job or from the YADE CLI Client.
See the YADE 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 the SFTP protocol the YADE can either use password authentication or private/public key authentication.
The SFTP authentication method can be specifed using the parameters source_ssh_auth_method resp. target_ssh_auth_method and the values password or publickey
YADE 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">
<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>
YADE Command Line Interface (CLI) client example
The jade_settings.ini profiles can be called from JobScheduler JITL job or from the YADE CLI Client.
See the YADE 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
See also
- Example for YADE cascaded profiles
- YADE Implementation Architecture
- Example for YADE JITL Job with Credential Store
