¿Dónde almacenar cadena conexión?

05/02/2007 - 11:30 por Alberto | Informe spam
¿Cuál considerais que es el lugar óptimo para almacenar la cadena de
conexión?
Pretendo que mis aplicaciones, en un apartado de configuración, puedan
acceder a ella y modificarla.

Gracias

Preguntas similare

Leer las respuestas

#1 Octavio Hernandez
05/02/2007 - 12:39 | Informe spam
Alberto,

Se supone q los ficheros de configuración son para eso...
Mira este artículo:

http://www.devx.com/dotnet/Article/11616

Slds - Octavio



"Alberto" <añ escribió en el mensaje
news:%
¿Cuál considerais que es el lugar óptimo para almacenar la cadena de
conexión?
Pretendo que mis aplicaciones, en un apartado de configuración, puedan
acceder a ella y modificarla.

Gracias

Respuesta Responder a este mensaje
#2 Fco. Fidel Ortega
05/02/2007 - 12:57 | Informe spam
El lugar correcto seria el App.config

El fichero App.config es un fichero con formato XML donde guardarias
parametros de configuración de la aplicación.

Para agregar un fichero de configuración, ve al menu proyecto y selecciona
"Agregar nuevo elemento". En el cuadro de dialogo de nuevo elemento
selecciona "Archivo de configuración de aplicación", pulsa aceptar y veras
que se ha agregado el fichero App.config a tu proyecto.

Una vez que tienes el fichero de configuración, si quieres guardar alli tu
cadena de conexión tendras que agregar una nueva "key". Por ejemplo, esto
agregaria una "key" llamada "CADENA_CONEXION" que representaria una conexion
a una BBDD llamada ejemplo con autentificación Windows

<add key="CADENA_CONEXION" value="Data Source=.\SQLEXPRESS,
DataBase=ejemplo;Connect Timeout0;Integrated Security=True"/>

Esto deberias meterlo entre las etiquetas <appsettings> y </appsettings>

Una vez que tienes la clave en tu fichero de configuración, cuando quieras
cargarla en tu aplicación deberias usar lo siguiente.

- Tener en tu proyecto una referencia a System.configuration
- Incluir el espacio de nombres System.configuration
- Para obtener el valor de tu cadena de conexion utiliza la propiedad
AppSettings de la clase ConfigurationManager. La clase configurationManager
es abstracta y la propiedad AppSettings es Static, con lo que podras
invocarla sin crear objetos. Por ejemplo, para obtener nuesta cadena de
conexion

Visual Basic
Dim cadenaconexion as string
cadenaconexion = ConfigurationManager.AppSettings.Get("CADENA_CONEXION")

C#
string cadenaconexion;
cadenaconexion = ConfigurationManager.AppSettings.Get("CADENA_CONEXION");

Espero haber sido de ayuda

Un saludo
Fco. Fidel Ortega

"Alberto" <añ escribió en el mensaje
news:%
¿Cuál considerais que es el lugar óptimo para almacenar la cadena de
conexión?
Pretendo que mis aplicaciones, en un apartado de configuración, puedan
acceder a ella y modificarla.

Gracias

Respuesta Responder a este mensaje
#3 ANT1
05/02/2007 - 13:21 | Informe spam
Yo utilizo el app.config o algun archivo xml creado por mi.

Pero los archivos de configuracion como el app.config, al ser archivox
XML pueden ser leidos por cualquiera con cualquier editor de texto
como el bloq de notas.

En este archivo se guardaría el usser y password de la base de datos.
Valores a los que seria mejor no tener acceso.

¿No seria mejor alguna otra forma que tambien te permitiese editar
dichos valores desde el programa pero a los que no se tendria que
tener acceso desde fuera de el?
Respuesta Responder a este mensaje
#4 Fco. Fidel Ortega
05/02/2007 - 14:39 | Informe spam
Estoy de acuerdo. Dos datos sensibles no deberian nunca estar en un fichero
donde cualquiera tendria acceso de una forma tan simple.

A mi se me ocurren dos posibles soluciones.

- Encriptar los datos de usuario y contraseña, y desencriptarlo al leer
- No incluir el usuario y contraseña en el fichero App.config y que la
aplicación concatene estos datos a la cadena de conexion.

Seria interesante que compañeros con mas experiencia comenten sus tecnicas.

Un saludo
Fco. Fidel Ortega

"ANT1" escribió en el mensaje
news:
Yo utilizo el app.config o algun archivo xml creado por mi.

Pero los archivos de configuracion como el app.config, al ser archivox
XML pueden ser leidos por cualquiera con cualquier editor de texto
como el bloq de notas.

En este archivo se guardaría el usser y password de la base de datos.
Valores a los que seria mejor no tener acceso.

¿No seria mejor alguna otra forma que tambien te permitiese editar
dichos valores desde el programa pero a los que no se tendria que
tener acceso desde fuera de el?
Respuesta Responder a este mensaje
#5 Alfredo Novoa
05/02/2007 - 16:30 | Informe spam
On 5 Feb 2007 04:21:10 -0800, "ANT1" wrote:

Pero los archivos de configuracion como el app.config, al ser archivox
XML pueden ser leidos por cualquiera con cualquier editor de texto
como el bloq de notas.



Si son archivos de texto normal o archivos .ini, son más fáciles de
leer.

En este archivo se guardaría el usser y password de la base de datos.
Valores a los que seria mejor no tener acceso.



Eso no conviene guardarlo en un archivo. Cada usuario debería de
conocer su clave e introducirla cada vez que abra una sesión.

Saludos
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida