Skip to content

Security

Riversoft® STCP Gemini Rename does not open network ports or accept connections. Security depends on the server, the configuration file and the rules.

Password encryption key

The key given in applConfigPassPhrase decrypts the passwords stored in the instance configuration, such as the log database password. It must be the same one used by the other products in the environment. See Password encryption key.

Configuration file

applConfigPassPhrase, cfgDbPswd and the license file are sensitive data.

  • Restrict config.json to the run user and group (chmod 640).
  • In the configuration database, use a user with the minimum permissions needed to read the configuration.
  • Do not keep copies of config.json in shared directories or code repositories.

Run user

Run Riversoft STCP Gemini Rename as the stcp user, created by the package, and not as root. The run user needs:

  • read access to the source directories;
  • write access to the destination, backup and control (applLockDir) directories;
  • permission to run the external commands configured in the rules.

When Riversoft STCP Gemini Server or Riversoft STCP DirectLink triggers Riversoft STCP Gemini Rename, it runs as the user of those services.

External commands

The ExecProgBefore, ExecProg and ExecProgError commands run with the run user’s permissions and receive values derived from file names.

  • Use absolute paths and scripts that only the administrator can change.
  • In the scripts, treat the received values as data, without executing them. File names sent by partners may contain unexpected characters.
  • Restrict who can change the routings in the Riversoft Console Portal, because a routing defines the commands run on the server.

Directories and files

  • Keep backup directories with restricted access, because they hold copies of the received files.
  • When using the overwrite option (16) in the copy or the backup, make sure the rule does not reach files that should not be replaced.
  • Use RemoveAfterCopy only after validating the rule with -test, so the original file is not lost.