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.jsonto 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.jsonin 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
RemoveAfterCopyonly after validating the rule with-test, so the original file is not lost.