Pular para o conteúdo principal
A API do Cabine lê as configurações de variáveis de ambiente quando inicia. Para mudar um valor, reinicie o serviço. Para as configurações do Lerian Cabine no navegador, veja Configurando o Lerian Cabine. Nas tabelas abaixo, Obrigatório marca uma variável que você deve definir: Sim para qualquer deploy, ou a condição indicada. — significa que não há padrão. As condições usam dois termos:
  • Ambiente de produção: ENV_NAME é production ou prod.
  • Ambiente de desenvolvimento: ENV_NAME é development, develop, dev, local ou test.
As variáveis que guardam uma duração usam o formato de duração do Go, por exemplo 15m ou 24h. Uma duração que não pode ser lida é substituída pelo seu padrão. Uma duração igual ou menor que zero em uma variável DESK_ impede a inicialização. Um número que não pode ser lido também é substituído pelo seu padrão.

Runtime e servidor

DEPLOYMENT_MODE definido como saas também exige estes valores:
  • ENV_NAME é production, prod ou staging.
  • DB_SSLMODE é require, verify-ca ou verify-full.
  • PLUGIN_AUTH_ADDRESS, PLUGIN_ACCESS_MANAGER_URL e DESK_SPI_CALLBACK_URL usam https quando estão definidas.
DESK_CORS_ALLOWED_ORIGINS é uma lista que você separa com vírgulas. Escreva cada origem como scheme://host[:port], com http ou https, um host em minúsculas, sem porta padrão, sem caminho, sem query e sem credenciais. Um curinga ou uma entrada em outra forma impede a inicialização. Um valor vazio não adiciona cabeçalhos de CORS.

Banco de dados

Telemetria

Autenticação

A API do Cabine verifica as permissões de cada requisição com o Access Manager. Veja Acesso e papéis. PLUGIN_AUTH_ENABLED=false não é aceito quando ENV_NAME não está definido. Um ENV_NAME não definido não conta como ambiente de desenvolvimento.

Chamadas ao Access Manager

Depois que outro administrador da API do Cabine aprova a exclusão de um usuário operador, a API do Cabine exclui o usuário no Access Manager. Ela se autentica como uma aplicação do Access Manager. Veja Administração.

Chamadas ao Lerian SPI

Depois de uma aprovação, a API do Cabine envia a decisão ao Lerian SPI. Ela se autentica como uma aplicação do Access Manager. Conceda br-spi-operations:update no Lerian SPI a essa aplicação. Veja Aprovações de revisão manual.

Retenção

Regras do ambiente de produção

Em um ambiente de produção, a inicialização é interrompida a menos que estas variáveis tenham um valor:
  • PLUGIN_AUTH_ADDRESS
  • PLUGIN_ACCESS_MANAGER_URL, PLUGIN_ACCESS_MANAGER_CLIENT_ID e PLUGIN_ACCESS_MANAGER_CLIENT_SECRET
  • DESK_SPI_CALLBACK_URL, DESK_SPI_CALLBACK_CLIENT_ID e DESK_SPI_CALLBACK_CLIENT_SECRET
  • DEPLOYMENT_MODE
Em qualquer ambiente, um endereço sem o seu client ID e o seu client secret impede a inicialização.

Saúde e readiness

A API do Cabine serve /health, /readyz e /version na sua porta HTTP. /readyz responde 200 quando o serviço está pronto e 503 quando não está. Se a API do Cabine não consegue acessar o banco de dados na inicialização, a inicialização é interrompida. Se outra dependência não está pronta na inicialização, o serviço continua em execução e permanece não pronto. O resultado de readiness cobre estas dependências:
  • O banco de dados: a API do Cabine consegue alcançá-lo.
  • O esquema do banco de dados: ele está na versão atual. Aplique as migrações do banco de dados antes de iniciar o serviço.
  • O Access Manager: o serviço é ignorado quando PLUGIN_ACCESS_MANAGER_URL não está definida. Um endereço que não responde deixa o serviço não pronto.
  • O Lerian SPI: o serviço é ignorado quando DESK_SPI_CALLBACK_URL não está definida. Um Lerian SPI que não responde, uma decisão antiga não entregue, uma decisão recusada ou uma decisão esgotada aparece como um motivo. Isso não deixa o serviço não pronto.