¿Qué es el formato de archivo CONFIG?
Los archivos .config se utilizan comúnmente dentro de un sistema como archivos de configuración. Mediante el uso de archivos de configuración, se definen diversas opciones, parámetros y preferencias dentro de aplicaciones específicas o de todo el sistema. En la mayoría de los archivos .config, todas las propiedades se almacenan como texto plano, con mayor frecuencia como XML, que es el formato que Microsoft .NET utiliza para App.config (aplicaciones de escritorio) y Web.config (proyectos web ASP.NET). Algunos programas utilizan en su lugar un formato de estilo INI de tipo clave=valor o YAML.
El software informático y los sistemas operativos a menudo dependen de muchos ajustes y parámetros necesarios para controlar los procesos en curso. Los archivos .config sirven para este propósito: entre otras cosas, especifican directorios de archivos, cadenas de conexión y selectores de comportamiento de la aplicación. En algunos programas, se puede utilizar más de uno de estos archivos, pero esto suele verse en aplicaciones más complejas.
- Dado que se trata de archivos basados en texto, pueden editarse con cualquier editor de texto plano, incluido el Bloc de notas en Windows. Antes de editar, debe familiarizarse con el contenido del archivo, ya que los cambios incorrectos pueden afectar negativamente al funcionamiento de los programas o del sistema operativo.
- Los archivos
.configdefinen cómo se inicializa o funciona un programa en tiempo de ejecución; la mayoría de las aplicaciones los leen durante el inicio. En .NET, el archivoApp.configde un proyecto se copia y se renombra como<AssemblyName>.exe.configen la carpeta de salida. - El tiempo de ejecución de .NET también lee un archivo
machine.configa nivel de todo el sistema y combina sus ajustes con la configuración de la aplicación; los ajustes a nivel de aplicación tienen prioridad sobre los valores predeterminados del sistema. Los formatos relacionados incluyen archivos .cfg utilizados por muchas aplicaciones que no son de .NET.
Seguridad y protección
RIESGO: MEDIUMUn archivo .config de texto es seguro de abrir y leer. El riesgo reside en la EDICIÓN: debido a que un .config a menudo controla si su programa se inicia (y, para .NET, cómo se conecta a las bases de datos), un valor incorrecto, un error tipográfico o una etiqueta XML rota pueden impedir que la aplicación funcione. Siempre copie el original a una copia de seguridad antes de cambiar nada, edite con un editor de texto plano/código (nunca un procesador de textos) y cambie una sola cosa a la vez. También tenga en cuenta que los archivos .config pueden contener datos sensibles (cadenas de conexión a bases de datos, contraseñas, claves de API en Web.config); trátelos como confidenciales y desconfíe de los archivos de configuración «optimizados» descargados de fuentes no fiables.
Detalles del formato
en pocas palabrasProgramas que abren archivos CONFIG
Detalles técnicos
especificación profunda| Formato principal | XML: un elemento raíz `<configuration>` que envuelve las secciones `<appSettings>`, `<connectionStrings>` y `<system.*>` en el diseño estándar de .NET |
| Codificación de archivo | UTF-8 (estándar para archivos de configuración XML de .NET; codificación declarada en el prólogo XML) |
| Tipo MIME | `text/xml` |
| Firma de archivo | Ninguna universal; la variante XML de .NET comienza con `<?xml ...?>` en el desplazamiento 0; las variantes de clave=valor estilo INI no tienen bytes mágicos |
| Elemento raíz (.NET) | `<configuration>`: elemento externo obligatorio; los elementos secundarios como `<appSettings>` y `<connectionStrings>` siguen un esquema aplicado por el tiempo de ejecución |
| Mecanismo de lectura en tiempo de ejecución | Leído al inicio de la aplicación por el `ConfigurationManager` de .NET (o `IConfiguration` en .NET Core / .NET 5+); los cambios requieren un reinicio de la aplicación a menos que se configure explícitamente una recarga de configuración |
| Valores predeterminados a nivel de máquina | `machine.config` en la carpeta de instalación de .NET Framework proporciona valores predeterminados para todo el sistema; los ajustes de `.config` de la aplicación siempre anulan los predeterminados de la máquina |
| Transformación en tiempo de compilación | Los archivos de transformación de documentos XML (`.xdt`), como `App.Debug.config` y `App.Release.config`, son combinados por MSBuild para producir archivos de salida específicos del entorno |
| Nombre del archivo desplegado | Para las aplicaciones de escritorio de .NET, la salida se renombra a `<AssemblyName>.exe.config`; para ASP.NET, el archivo permanece como `Web.config` en la raíz web |
| Sección de cadenas de conexión | El elemento secundario `<connectionStrings>` almacena cadenas de conexión a bases de datos con nombre; el atributo `providerName` especifica el proveedor de ADO.NET (por ejemplo, `System.Data.SqlClient`) |
| Formatos de texto alternativos | Algunas aplicaciones utilizan `.config` para texto de tipo `clave=valor` estilo INI, YAML o TOML en lugar de XML; el formato interno es definido enteramente por la aplicación |
| Manejo de seguridad | IIS bloquea el acceso HTTP directo a los archivos `.config` por defecto; los valores sensibles como las contraseñas pueden cifrarse in situ utilizando `aspnet_regiis -pe` en Windows |
| Finales de línea | Normalmente CRLF en Windows, LF en Linux/macOS; el analizador XML normaliza ambos |
| Extensiones relacionadas | `.cfg`, `.ini`, `.conf`, `.xml`, `.json`, `.yaml` |
| Lanzado | No single origin; .NET App.config/Web.config since .NET Framework 1.0 (2002) |
| Especificación | learn.microsoft.com |
Conversiones de CONFIG
Preguntas y respuestas de la comunidad
preguntado por usuariosAún no hay preguntas; sea el primero en preguntar sobre los archivos CONFIG.