RoboServer Configuration - Headless Mode

Kofax RPA ships with several utilities to configure your RoboServer from a command line. The utilities are located in the bin subfolder of the Kofax RPA installation folder. Note that the configuration files are user-dependent and stored in the user folder. For more information, see the Important Folders topic in the Kofax RPA Installation Guide.

  • ConfigureRS: Sets the JMX password and the Management Console password in the RoboServer settings file (roboserver.settings).
  • ConfigureMC: Sets protocols and ports usage, certificate passwords, and upload JDBC jar files permission in the mc.settings file.
  • ConfigureRSUser: Adds and removes users and updates user credentials in the rsusers.xml file. Information in this file is used to authenticate API requests.

For help on usage, run utilities with an -h option.

To set a connection to the Management Console that the RoboServer will register to, type the following command:

ConfigureRS -mcUrl http://admin:password@localhost:8080/ManagementConsole

Note The default admin superuser credentials are: user name - admin, password - admin.

To create a user user1 with Password1 password and all permissions type the next command:

ConfigureRSUser user1 Password1 -a

To enable authentication of API requests, you must open rsusers.xml and change the enabled attribute to true, as shown in the following example.

Sample rsusers.xml configuration file

<?xml version="1.0" encoding="UTF-8"?>

 <userConfiguration enabled="true">
   <users>
     <user username="user1" password_hash="20c7628c31534b8718a1da00435505e4262e3f4dc305">
       <startRobot/>
       <stopRobot/>
       <shutdownRoboServer/>
     </user>
   </users>
 </userConfiguration>

Sample roboserver.settings configuration file

# Settings file for RoboServers. Some configurations contains encrypted passwords and should not be edited by hand, 
           these should be modified using dedicated commandline tools.

# The directory for use on RoboServers when the API used the DefaultRoboLibrary. On Windows \ must be escaped in the following way:  
c:\\\\users\\AppData\\Local\\Kofax RPA\\...
defaultProject = /home/TestUser/Kofax RPA/trunk

# Should RoboServers be allowed to access the fileSystem, or call commands/scripts. Values: true/false
sec_allow_file_system_access = false

# Will RoboServers accept JDBC drivers sent from the Management Console. Values: true/false
sec_accept_jdbc_drivers = true

# Should RoboServers log all loaded URLs to the log4j2 audit log. Values true/false
sec_log_http_traffic = false

# If enabled RoboServers will check credentials for API requests. Values: true/false
sec_authenticate_api_requests = false

# If enabled RoboServers generate an error when accessing a https site without a valid certificate. Values: true/false
cert_verify_https_certificates = false

# If enabled, RoboServers will only allow SSL connections from trusted client. Values true/false
cert_verify_api_certificates = false

# Configures if the the JMX service should be enabled
enable_jmx = false

# The port number for the JMX service to listen on.
jmx_port_Number = 50100

# If enabled, input for robots is exposed through JMX. Values: true/false 
jmx_show_inputs = true

# Heartbeat notification interval, in seconds
jmx_heartbeat_interval = 0

# Configure if JMX should use RMI
enable_jmx_rmi = false

# Optional RMI host and port for the JMX service. Use if you need to connect through a firewall. Example: example.com:51001
jmx_rmi_url = 

# Enables authentication for JMX requests. Values: true/false
jmx_enable_authentication = true

# The user-name used for JMX authentication
jmx_username = 

# The password used for JMX authentication. This should be created using the ConfigureRS command line tool.
jmx_password = 

# Configures if the socket service should be enabled
enable_socket_service = false

# Configures which port the RoboServers should be listening on
port = 50000

# Configures if the ssl socket service should be enabled
enable_ssl_socket_service = false

# Configures which ssl port the RoboServers should be listening on
ssl_port = 50001

# Configures if the JMS service should be enabled
enable_jms_service = false

# Configures which id the RoboServers should have when running JMS
jms_id = 1

# Configures the URL of the message broker when running JMS
broker_url = 

# Specify which Management Console to register to formatted as: http[s]://<hostname>:<port number>
mc_URL = 

# The user name to use for authentication to the Management Console
mc_username = 

# The password to use for authentication to the Management Console
mc_password = 

# Specifies which cluster the RoboServers should be registered to
cluster = 

# Causes RoboServers to output status and runtime events
verbose = false

Sample mc.settings configuration file

# Settings file for Management Console. Passwords should not be edited by hand, but using the 'ConfigureMC' command line utility.


 # Should the MC web-server start a HTTP listener. Values true/false
 mc_http = true

 # Configures the port of the http listener.
 mc_http_port = 50080

 # Should the MC web-server start a HTTPs listener. Values true/false
 mc_https = false

 # Configures the port of the HTTPS listener.
 mc_https_port = 50443

 # Password for the certificate used by the HTTPs listener. This should be created using the ConfigureMC command line tool.
 mc_https_cert_password = 3W2MTrL/b2k=

 # Configures which hosts are allowed to upload JDBC jar files to MC. Values: NONE, LOCALHOST, ANY_HOST
 mc_allow_jdbc_upload = LOCALHOST