Código y publicación

Qué es una variable de entorno (y un secreto)

Una variable de entorno es un dato con nombre que un programa recibe para configurar su funcionamiento sin escribir ese valor en el código.

Por

Director de Ciade · 8 min de lectura ·

Foto: TECNIC Bioprocess Solutions / Unsplash · tratamiento Ciade · Licencia de Unsplash
Índice del artículo
  1. En 30 segundos
  2. Una instaladora necesita preparar avisos
  3. No lo confundas con
  4. El recorrido de una clave
  5. Un archivo de ajustes no es una caja fuerte
  6. Qué pedir al entregar una web
  7. Lo que llega al navegador deja de ser privado
  8. Si una clave ya se ha publicado
  9. Siguiente paso para tu proyecto
  10. Dudas sobre variables de entorno, respuestas cortas

En 30 segundos

  1. Una variable de entorno es un dato con nombre que un programa recibe para configurar su funcionamiento sin escribir ese valor en el código.

  2. No es una caja fuerte: puede contener una clave, pero no la protege por sí sola. Distingue el ajuste que recibe el programa, el dato que necesita protección y el sistema que lo custodia.

Una instaladora necesita preparar avisos

Ejemplo ilustrativo: una instaladora de Valladolid encarga una aplicación para preparar borradores de aviso sobre solicitudes recibidas. El programa necesita la dirección del servicio al que se conecta y una clave privada. Esa clave permite identificarse ante una API, una vía para que dos programas se comuniquen. La dirección y la clave ayudan a configurar la aplicación, pero requieren un trato distinto: conocer la dirección no equivale a disponer del acceso.

La persona que implanta la aplicación separa esos valores de las instrucciones del programa. Así, configuración y código pueden mantenerse por separado. La dirección se proporciona como un ajuste ordinario; la clave se entrega mediante el mecanismo de secretos del alojamiento, el servicio donde funciona la aplicación. Antes de enviar avisos reales, una persona debe aprobar el texto. Esa aprobación hay que construirla y probarla: ninguna variable la añade por sí sola.

No lo confundas con

Variable

Es el mecanismo de configuración: un nombre y un valor que recibe el programa. Puede indicar un horario o contener una contraseña. Lo que lleva dentro determina qué protección necesita.

Secreto

Es el dato que debes proteger, como una contraseña de base de datos o una clave privada de conexión. Llamarlo secreto describe su sensibilidad; los controles de acceso se configuran aparte.

Gestor

Es el sistema que lo custodia y lo entrega al programa autorizado. Puede suministrar el valor como variable o como archivo protegido. El programa sigue necesitando usarlo para realizar su tarea.

El recorrido de una clave

  1. Custodia
  2. Aplicación
  3. Servicio autorizado

La clave llega al programa para que pueda identificarse ante el servicio. Que un panel oculte el valor no impide que la aplicación lo utilice ni que lo revele por error. Al revisar el recorrido, comprueba también las salidas: lo que recibe el visitante, los archivos compartidos y los registros de diagnóstico donde se guardan detalles del funcionamiento.

Un archivo de ajustes no es una caja fuerte

Un archivo .env es texto con nombres y valores que una aplicación puede cargar como variables de entorno. No es lo mismo que la variable: el archivo es una forma de proporcionarla. Tampoco todas las aplicaciones lo leen automáticamente ni interpretan su formato de la misma manera. Si quien mantiene tu web dice que «está en el archivo de entorno», todavía falta saber dónde está ese archivo, quién puede leerlo y si se incluye entre los archivos que se publican.

Git, el sistema que guarda versiones del código, permite indicar qué archivos deben ignorarse mediante .gitignore. Esa exclusión es útil para evitar nuevas incorporaciones, pero no borra lo ya guardado. Si Git ya guardaba el archivo con la clave, añadirlo a la lista de exclusiones no elimina lo que se guardó antes. Un repositorio es el conjunto de archivos y su historial: revisar solo la carpeta actual deja fuera parte de lo que se pudo compartir.

Para entregar el mantenimiento, puedes compartir una plantilla .env.example con los nombres de los ajustes y valores ficticios. Es una convención de documentación, no una protección técnica ni una regla obligatoria de todas las aplicaciones. El nombre del archivo no decide si resulta seguro compartirlo. Lo decide su contenido. En la plantilla explica para qué sirve cada ajuste y deja los valores reales fuera de la copia que recibirá quien revise el proyecto.

Qué pedir al entregar una web

Inventario
Pide una relación de nombres y propósito de los ajustes necesarios, con ejemplos ficticios. Debe distinguir los datos ordinarios de los que conceden acceso a un servicio. No necesitas recibir una copia con todas las claves para entender cómo está configurada tu web. La documentación debe permitir saber qué dato falta y quién es responsable de proporcionarlo cuando cambie el mantenimiento.
Acceso
Deja por escrito quién puede leer cada secreto y qué aplicación lo necesita. En el caso de Valladolid, la clave de conexión corresponde al programa que prepara los avisos; no justifica acceso a otras cuentas del negocio. Si el responsable utiliza un gestor, pide que explique cómo concede ese acceso. El nombre del producto no sustituye esa explicación ni demuestra que los permisos estén bien configurados.
Aceptación
Solicita una prueba con datos ficticios que siga el valor desde su custodia hasta su uso. La revisión debe comprobar que no aparece en lo que recibe el visitante ni en los registros. Pide que se explique qué se ha observado y qué queda pendiente, en lugar de aceptar una captura de un panel con la clave oculta como prueba de todo el recorrido.

Lo que llega al navegador deja de ser privado

La aplicación funciona en un servidor, el ordenador del alojamiento que la ejecuta. Parte del código se envía al navegador del visitante, donde los datos incorporados dejan de ser privados. Next.js, una herramienta para construir aplicaciones web, permite incorporar al código enviado al navegador las variables referenciadas con el prefijo NEXT_PUBLIC_. Ese mecanismo sirve para configuración pública. Una clave privada colocada ahí puede acabar a disposición del visitante aunque inicialmente se haya escrito en un archivo separado del código.

Además, esos valores públicos se fijan al compilar la aplicación, es decir, al preparar el código que se entregará al navegador. Cambiar después el ajuste del servidor no actualiza por sí solo el paquete ya construido. Cuando pidas cambiar una configuración, pregunta cómo la lee esa aplicación y qué hace falta para que utilice el valor nuevo. No des por hecho que todos los programas aplican los cambios del mismo modo ni que siempre basta con reiniciar.

Si una clave ya se ha publicado

  1. Revoca o sustituye

    Invalida primero la clave expuesta: pide al responsable del servicio que la revoque o sustituya y coordine el cambio con quien mantiene la aplicación. Borrar el archivo no anula una clave que sigue presente en copias anteriores.

  2. Revisa las copias

    Localiza dónde se expuso: código compartido, historial del repositorio y otras copias que deban revisarse. La limpieza del historial puede afectar a quienes colaboran en el proyecto y a sus propias copias. Por eso debe coordinarla la persona responsable del mantenimiento. No pidas una eliminación indiscriminada del historial como respuesta automática: antes hay que valorar el alcance y qué conservar para seguir trabajando.

  3. Corrige la entrega

    Revisa cómo llegó hasta allí y cambia la forma de suministrar ese dato al programa. Comprueba las exclusiones de archivos y separa la plantilla compartible de los valores reales. Si una persona necesita acceso para mantener la aplicación, concédelo mediante el mecanismo elegido para los secretos que le correspondan. Enviar todas las claves por correo o pegarlas en el chat vuelve a crear copias que también tendrás que controlar.

Siguiente paso para tu proyecto

Antes de dar por terminada una entrega, plantea una pregunta concreta: «¿Cómo se carga en producción?» Producción es la instalación que utiliza tu negocio; tu ordenador y el alojamiento pueden tener valores distintos. Cloudflare Workers, por ejemplo, contempla configuración por entorno y distingue los ajustes ordinarios de la opción Secret para datos sensibles. Que algo funcione en el ordenador no demuestra que se haya configurado igual en la instalación publicada.

Si estás preparando una prueba, sigue con qué es un entorno de pruebas. Para entender el dato que concede acceso, lee qué es una clave de API y qué es una API. Si quieres aprender a trabajar con código, tienes el curso Claude Code a fondo. El criterio para revisar la entrega sigue siendo el recorrido del dato: dónde se guarda, quién lo recibe y dónde podría aparecer.

Dudas sobre variables de entorno, respuestas cortas

¿Todas las variables de entorno son secretas?

No. Una variable puede contener un horario o una dirección pública, además de una contraseña. Clasifica por el contenido y por el acceso que concede. Una dirección que incluye usuario y contraseña también contiene un secreto, aunque parezca un simple ajuste de conexión.

¿Guardar una clave en un archivo de ajustes la cifra?

No. Un archivo de ajustes puede contener texto legible con nombres y valores. Separarlo del código no lo convierte en una caja fuerte. Comprueba dónde se guarda, quién puede leerlo y si se incluye entre los archivos publicados o compartidos. El nombre del archivo no garantiza su protección.

¿Basta con excluir de Git un archivo que ya contenía una clave?

No. La lista de exclusiones de Git no borra lo ya guardado ni sus versiones anteriores. Si la clave se ha publicado, primero revócala o sustitúyela. Después, quien mantiene el proyecto debe revisar las copias y coordinar la limpieza necesaria con las personas que colaboran en él.

¿Cambiar una variable actualiza la web al instante?

Depende de cómo la lea la aplicación. En Next.js, los valores públicos incorporados al código del navegador se fijan al compilar, cuando se prepara ese código. Cambiar después el ajuste del servidor no actualiza el paquete construido. Pregunta qué necesita tu aplicación para utilizar el valor nuevo.

Fuentes

Fuentes oficiales, consultadas el 4 de noviembre de 2026

  1. Node.js · Variables de entorno y archivos de ajustes
  2. Cloudflare Workers · Configuración por entorno
  3. Cloudflare Workers · Custodia y uso de secretos
  4. Next.js · Variables y código enviado al navegador
  5. Docker Compose · Secretos como archivos y acceso por servicio
  6. GitHub · Retirar datos sensibles de un repositorio
  7. GitHub · Exclusión de archivos

Cómo lo comprobamos. Fuentes oficiales consultadas el 4 de noviembre de 2026. Ciade no ha probado la gestión de secretos de Workers ni ha desplegado la aplicación del ejemplo para este artículo.

Qué ha cambiado.

  • 4 de noviembre de 2026: Reescritura v2: distinción entre variable, secreto y gestor; archivos de ajustes, exposición al navegador, entrega del mantenimiento y respuesta ante una clave publicada.

Términos relacionados

Aprende a usar la IA en tu trabajo, con criterio.

El nivel 0 es gratis: cuarenta minutos para entender qué pedirle a la IA y qué revisar. El programa completo enseña a implementarla en tu propio negocio, tarea a tarea.

El canal de Telegram de Ciade

El lunes, una palabra del glosario. El miércoles, un consejo práctico. El viernes, las noticias de IA de la semana. Y el martes, el boletín.

Unirme al canal

Tú decides qué medimos

Las cookies técnicas hacen que la web funcione. Con tu permiso, además, medimos las visitas con Ahrefs y de qué campaña llegas, y Meta mide nuestros anuncios y puede mostrarte los de Ciade en Facebook e Instagram. Puedes cambiarlo cuando quieras en «Configurar cookies», al pie de la página. Política de cookies