Pular para o conteúdo principal

Configuração

Variáveis de ambiente​

Uso​

Logto lida com variáveis de ambiente na seguinte ordem:

  • Variáveis de ambiente do sistema
  • O arquivo .env na raiz do projeto, que está em conformidade com o formato dotenv

Assim, as variáveis de ambiente do sistema irão sobrescrever os valores em .env.

Variáveis​

cuidado:

Se você executar o Logto via npm start na raiz do projeto, NODE_ENV será sempre production.

Nos valores padrão, protocol será http ou https de acordo com sua configuração de HTTPS.

KeyValor PadrãoTipoDescrição
NODE_ENVundefined'production' | 'test' | undefinedEm que tipo de ambiente o Logto está sendo executado.
PORT3001numberA porta local que o Logto escuta.
ADMIN_PORT3002numberA porta local que o Logto Admin Console escuta.
ADMIN_DISABLE_LOCALHOSTN/Astring | boolean | numberDefina como 1 ou true para desabilitar a porta para o Admin Console. Com ADMIN_ENDPOINT não definido, ele desativará completamente o Admin Console.
DB_URLN/AstringO Postgres DSN para o banco de dados Logto.
HTTPS_CERT_PATHundefinedstring | undefinedVeja Habilitando HTTPS para detalhes.
HTTPS_KEY_PATHundefinedstring | undefinedIdem.
TRUST_PROXY_HEADERfalsebooleanIdem.
ENDPOINT'protocol://localhost:$PORT'stringVocê pode especificar uma URL com seu domínio personalizado para testes online ou produção. Isso também afetará o valor do identificador do emissor OIDC.
ADMIN_ENDPOINT'protocol://localhost:$ADMIN_PORT'stringVocê pode especificar uma URL com seu domínio personalizado para produção (Ex.: ADMIN_ENDPOINT=https://admin.domain.com). Isso também afetará o valor dos URIs de redirecionamento do Admin Console.
CASE_SENSITIVE_USERNAMEtruebooleanEspecifica se o nome de usuário é sensível a maiúsculas e minúsculas. Tenha cuidado ao modificar este valor; mudanças não ajustarão automaticamente os dados existentes no banco de dados, exigindo gerenciamento manual.

Habilitando HTTPS​

Usando Node​

Node suporta HTTPS nativamente. Forneça AMBOS HTTPS_CERT_PATH e HTTPS_KEY_PATH para habilitar HTTPS via Node.

HTTPS_CERT_PATH implica o caminho para o seu certificado HTTPS, enquanto HTTPS_KEY_PATH implica o caminho para a sua chave HTTPS.

Usando um proxy HTTPS​

Outra prática comum é ter um proxy HTTPS na frente do Node (Ex.: Nginx).

Nesse caso, você provavelmente desejará definir TRUST_PROXY_HEADER como true, o que indica se os campos de cabeçalho do proxy devem ser confiáveis. Logto passará o valor para as configurações do aplicativo Koa.

Veja Confiando em proxies de descarregamento TLS para saber quando configurar este campo.

Configurações do banco de dados​

Gerenciar muitas variáveis de ambiente não é eficiente e flexível, então a maioria de nossas configurações gerais são armazenadas na tabela do banco de dados logto_configs.

A tabela é um armazenamento simples de chave-valor, e a chave é enumerável como segue:

KeyTipoDescrição
oidc.cookieKeysstring[]O array de strings das chaves de assinatura de cookies.
oidc.privateKeysstring[]O array de strings do conteúdo da chave privada para assinatura de JWT OIDC.

Tipos de chave privada suportados​

  • EC (curvas P-256, secp256k1, P-384 e P-521)
  • RSA
  • OKP (subtipos Ed25519, Ed448, X25519, X448)