Saltar para o conteúdo

Configuração

Visão geral

O Riversoft® STCP Gemini Rename usa um único arquivo de configuração, /usr/local/stcpren/configs/config.json. Ele define a chave de criptografia, a licença, onde ficam a instância e os roteamentos e como o controle de execução é feito. Outro arquivo pode ser informado com -config.

Escolha o modo antes de criar o arquivo. Veja Modos de configuração.

Chave de criptografia das senhas

As senhas e os demais dados sensíveis gravados no banco de configuração (por exemplo, as senhas dos usuários, dos bancos de dados e das credenciais de supervisão) são criptografados. Todos os módulos que leem ou gravam esses dados precisam usar a mesma chave. Caso contrário, um módulo não consegue ler as senhas gravadas por outro.

MóduloArquivoParâmetro
Riversoft STCP Gemini Server/usr/local/stcp/configs/stcpserver.config.jsonApplConfigPassPhrase (seção STCPCore)
Riversoft STCP DirectLinkconfigs/config.json da instalaçãoapplConfigPassPhrase
Riversoft STCP Gemini Rename/usr/local/stcpren/configs/config.jsonapplConfigPassPhrase (seção General)
Riversoft STCP Gemini API/usr/local/stcpgemini-api/configs/config.jsonapi_secret (seção general)
    flowchart LR
    K[Mesma chave] --> G[Gemini Server]
    K --> D[DirectLink]
    K --> R[Gemini Rename]
    K --> A[Gemini API]
    G --> DB[(Banco de configuração<br/>senhas criptografadas)]
    D --> DB
    R --> DB
    A --> DB
  

Importante

Defina a chave antes do primeiro cadastro e use o mesmo valor em todos os módulos do ambiente. Para trocá-la depois, os dados sensíveis já gravados precisam ser criptografados de novo com a nova chave, por um procedimento feito com uma aplicação própria. Acione o suporte Riversoft antes de trocar a chave.

  • Use um valor forte e aleatório, guardado fora do código.
  • No Riversoft STCP DirectLink, o parâmetro aceita referência a segredo (env:, file: ou kms:). Prefira ler o valor de uma variável de ambiente, de um arquivo protegido ou de um cofre de segredos.
  • Na Riversoft STCP Gemini API, o api_secret também assina os tokens de acesso.
  • Guarde a chave no backup seguro do ambiente: sem ela, as senhas de um banco restaurado não podem ser lidas.

Arquivo de configuração

Crie o arquivo a partir do modelo do modo escolhido e ajuste os valores:

cd /usr/local/stcpren/configs
cp example-config-db.json config.json
{
  "General": {
    "applDir": "/usr/local/stcpren",
    "applLockDir": "/usr/local/stcpren/control",
    "applPidFile": "",
    "applConfigPassPhrase": "<chave-de-criptografia>",
    "applUser": "stcp",
    "applGroup": "stcp",
    "applDebug": 0,
    "License": "/usr/local/stcpren/license/<arquivo-de-licenca>"
  },
  "cfgProvider": {
    "cfgProviderType": "stcpgeminidb",
    "cfgInstanceName": "<instancia>",
    "cfgDbName": "GEMINI_DBConfig",
    "cfgDbHost": "db.exemplo.com",
    "cfgDbPort": 3306,
    "cfgDbUser": "<usuario>",
    "cfgDbPswd": "<senha>",
    "cfgDbType": "mysql"
  },
  "lockProvider": {
    "lockEnable": true,
    "lockType": "filesystem"
  }
}

Os roteamentos são lidos do banco pelo nome informado em -rules, e as mensagens são gravadas no banco de log da instância.

SeçãoFunção
GeneralDiretórios, usuário e grupo de execução, chave de criptografia, debug e licença.
cfgProviderModo de configuração, instância associada e, no modo banco de dados, conexão com o banco de configuração.
lockProviderControle de execuções simultâneas.
cfgInstanceParâmetros da instância, somente no modo arquivo local.

Todos os parâmetros estão em Referência de parâmetros.

Importante

cfgInstanceName deve ser igual ao nome da instância usada pelo Riversoft STCP Gemini Server (ApplName) ou pelo Riversoft STCP DirectLink.

Crie o diretório de controle informado em applLockDir, se ele ainda não existir:

mkdir -p /usr/local/stcpren/control
chown stcp:stcp /usr/local/stcpren/control

Roteamentos

  • Modo banco de dados: cadastre os roteamentos na instância, no Riversoft Console Portal. Para conferir um roteamento fora do Portal, exporte-o para JSON com -export. Veja Operação.
  • Modo arquivo local: crie o arquivo JSON do roteamento a partir do modelo example-config_rules.json. Para regras antigas em formato INI, use a conversão com -ini. Veja Atualização e migração.

A estrutura do roteamento está em Referência de regras.

Teste da configuração

Confira se a configuração e o roteamento são lidos corretamente, sem processar arquivos:

stcpren -db -rules <ROTEAMENTO> -test <arquivo-de-exemplo>

No modo arquivo local, troque -db -rules <ROTEAMENTO> por -rules <caminho-do-roteamento.json>.

Segurança do arquivo

applConfigPassPhrase, cfgDbPswd e o arquivo de licença são dados sensíveis. Restrinja o acesso ao config.json ao usuário e ao grupo definidos em applUser e applGroup:

chown stcp:stcp /usr/local/stcpren/configs/config.json
chmod 640 /usr/local/stcpren/configs/config.json

Veja também Segurança.