Saltar al contenido principal

Configuración

Variables de entorno​

Uso​

Logto maneja las variables de entorno en el siguiente orden:

  • Variables de entorno del sistema
  • El archivo .env en la raíz del proyecto, que cumple con el formato dotenv

Por lo tanto, las variables de entorno del sistema sobrescribirán los valores en .env.

Variables​

precaución:

Si ejecutas Logto a través de npm start en la raíz del proyecto, NODE_ENV siempre será production.

En los valores predeterminados, protocol será http o https según tu configuración de HTTPS.

ClaveValor PredeterminadoTipoDescripción
NODE_ENVundefined'production' | 'test' | undefinedQué tipo de entorno en el que se ejecuta Logto.
PORT3001numberEl puerto local al que Logto escucha.
ADMIN_PORT3002numberEl puerto local al que escucha Logto Admin Console.
ADMIN_DISABLE_LOCALHOSTN/Astring | boolean | numberEstablécelo en 1 o true para deshabilitar el puerto para Admin Console. Con ADMIN_ENDPOINT sin establecer, deshabilitará completamente Admin Console.
DB_URLN/AstringEl Postgres DSN para la base de datos de Logto.
HTTPS_CERT_PATHundefinedstring | undefinedConsulta Habilitar HTTPS para más detalles.
HTTPS_KEY_PATHundefinedstring | undefinedÍdem.
TRUST_PROXY_HEADERfalsebooleanÍdem.
ENDPOINT'protocol://localhost:$PORT'stringPuedes especificar una URL con tu dominio personalizado para pruebas en línea o producción. Esto también afectará el valor del identificador del emisor de OIDC.
ADMIN_ENDPOINT'protocol://localhost:$ADMIN_PORT'stringPuedes especificar una URL con tu dominio personalizado para producción (Ej. ADMIN_ENDPOINT=https://admin.domain.com). Esto también afectará el valor de los URIs de redirección de Admin Console.
CASE_SENSITIVE_USERNAMEtruebooleanEspecifica si el nombre de usuario distingue entre mayúsculas y minúsculas. Ten cuidado al modificar este valor; los cambios no ajustarán automáticamente los datos existentes de la base de datos, requiriendo gestión manual.

Habilitar HTTPS​

Usando Node​

Node admite HTTPS de forma nativa. Proporciona AMBOS HTTPS_CERT_PATH y HTTPS_KEY_PATH para habilitar HTTPS a través de Node.

HTTPS_CERT_PATH implica la ruta a tu certificado HTTPS, mientras que HTTPS_KEY_PATH implica la ruta a tu clave HTTPS.

Usando un proxy HTTPS​

Otra práctica común es tener un proxy HTTPS frente a Node (Ej. Nginx).

En este caso, probablemente querrás establecer TRUST_PROXY_HEADER en true, lo que indica si los campos de encabezado del proxy deben ser confiables. Logto pasará el valor a configuraciones de la aplicación Koa.

Consulta Confiar en proxies de descarga de TLS para saber cuándo configurar este campo.

Configuraciones de la base de datos​

Gestionar demasiadas variables de entorno no es eficiente ni flexible, por lo que la mayoría de nuestras configuraciones generales se almacenan en la tabla de la base de datos logto_configs.

La tabla es un almacenamiento simple de clave-valor, y la clave es enumerable de la siguiente manera:

ClaveTipoDescripción
oidc.cookieKeysstring[]El arreglo de cadenas de las claves de firma de cookies.
oidc.privateKeysstring[]El arreglo de cadenas del contenido de la clave privada para la firma de JWT de OIDC.

Tipos de clave privada compatibles​

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