Secretos y entornos
Lo que protege realmente un token y lo que lo divulga sin que usted lo vea.
Un secreto rara vez se filtra por un ataque. Se filtra porque un desarrollador con prisa añadió echo $API_KEY para comprobar que la variable se transmitía correctamente, porque el registro de ejecución permaneció seis meses en un repositorio público y porque nadie se acordó de él. Se filtra también porque un token se pasó como argumento de línea de comandos —y por tanto es visible en la lista de procesos del runner— o porque un comando curl en modo detallado copió la cabecera de autorización en su salida.
GitHub enmascara automáticamente los secretos en los registros, sustituyendo su valor exacto por asteriscos. Esta protección es real, pero frágil por construcción: funciona por comparación de cadenas. Si el secreto está codificado, fragmentado o se muestra carácter a carácter, el enmascaramiento ya no reconoce nada y el valor aparece en claro. Entender dónde termina esta protección es más útil que considerarla una red de seguridad.
Secretos o variables: la distinción correcta
GitHub ofrece dos tipos de almacenamiento, en los ajustes del repositorio.
Las variables (vars) se pueden leer en claro en la interfaz y se muestran en los registros. Sirven para lo que es configuración y no derecho de acceso: una URL de API, un nombre de región, un identificador de proyecto, un nivel de registro.
Comentarios
Los comentarios funcionan con GitHub Discussions
Inicia sesión con GitHub para participar en la discusión