Cómo añadir un secreto a un Cloudflare Worker
Guardar una clave de API para un Worker de forma que nunca quede en el código, en un chat ni en una pestaña del navegador.
Un Worker Secret es un valor que Cloudflare guarda cifrado y expone a un solo Worker como variable de entorno. Lo escribes una vez; después nadie, ni siquiera tú, puede volver a leerlo desde el panel. Así guarda seops cada clave de proveedor, y así deberías guardar las claves en tus propios Workers.
Qué se activa en seops
- Las claves quedan fuera del código, los commits, los registros de chat y las pestañas del navegador
- Rotar una clave es volver a añadirla con el mismo nombre
- Funciona igual desde el panel y desde
wrangler secret put
Pasos
-
Abre los ajustes del Worker
En el panel de Cloudflare ve a Workers & Pages, elige el Worker y luego Settings.
-
Busca Variables and Secrets
Baja hasta Variables and Secrets y pulsa + Add.
-
Elige el tipo Secret
Pon Type en Secret. En Variable name escribe el nombre que lee tu código (por ejemplo
BING_WEBMASTER_API_KEY); pega el valor en Value. -
Despliega
Pulsa Deploy. El Worker ve el secreto en segundos. Desde una terminal, lo mismo es
wrangler secret put BING_WEBMASTER_API_KEY.wrangler secret put BING_WEBMASTER_API_KEY
Cómo usarlo en seops
- Léelo en el Worker como
env.BING_WEBMASTER_API_KEY - Nunca lo registres en logs; enmascáralo si tienes que mostrar que existe (seops muestra solo los últimos 4 caracteres)
Preguntas
He escrito mal el valor
Añádelo de nuevo con el mismo nombre; el nuevo valor sustituye al antiguo en el siguiente despliegue.
¿Secreto o variable normal?
Todo lo que da acceso (claves de API, tokens, contraseñas) es un secreto. Los ajustes que no importa volver a leer (una región, un feature flag) pueden ser variables normales.