Está en la página 1de 6

Curso de ASP NET 2.

0 Avanzado

Conexión con la base de datos.


Para comenzar a trabajar con una base de datos desde nuestra
aplicación, lo primero que debemos hacer lógicamente es interconectar
la base de datos con nuestro proyecto web.

Para conseguir esta conexión debemos indicar el nombre del servidor de


la base de datos, el nombre de la base de datos con la que vamos a
conectar, y una serie de parámetros que configura la conexión.

Para conseguir conectar con la base de datos contamos con el objeto


SqlConnection para conectar con servidores SQL Server, pero el resto de
proveedores también cuentas con sus propios objetos de conexión como
por ejemplo OleDbConnection.

Este objeto, recibe como argumento una cadena con la información


requerida para la conexión. Para poder construir esta cadena, debemos
recordar que modo de autenticación debemos elegir para identificarnos
en SQL Server 2005.

Modos de autenticación.
Recuerda que teníamos dos modos de autenticación:

 Autenticación Windows.

 Autenticación SQL Server 2005 o mixta.

Cada una de estas autenticaciones tiene su ventaja y su desventaja


frente a la otra.
Si utilizamos autenticación mixta, cada usuario de nuestro sitio web
deberá tener su propia cuenta en SQL Server 2005, por lo tanto cada
vez que demos de alta, baja, o modifiquemos un usuario, deberemos
actualizar las cuentas de usuario de SQL Server 2005. Otro modo de
trabajo es crear una única cuenta de usuario en SQL Server 2005 que
sea la utilizada de modo genérico por todos nuestros usuarios, esto
supone un problema importante ya que todos los usuarios de nuestra
aplicación compartirán los mismos permisos de acceso, sin importar si
se tratan de administradores del sitio o usuarios básicos.

El mayor problema de esta autenticación radica en que cuando se hace


una petición de acceso a SQL Server 2005, las credenciales necesarias
para esta conexión (login y contraseña) se envían en formato HTML sin
encriptar. Esto facilitaría las tareas de robos de credenciales para su uso
indebido.

La autenticación en modo Windows, es la más recomendable de utilizar


para proyectos Web. Con este modo, SQL Server 2005 no necesita
recibir las credenciales en forma de login y contraseña. Para permitir el
acceso a sus bases de datos, basa estos permisos en una relación de
confianza con otras fuentes que comprueben la identificación de usuario.

Por lo tanto, para la autenticación Windows, basta con crear una cuenta
llamada ASPNET para permitir el acceso de nuestros usuarios desde
nuestro proyecto Web. Evitando los problemas de seguridad del envío de
login y contraseñas sin cifrar, y la tarea de crear cuentas para cada
usuario de nuestras webs.
Cadenas de conexión.
En función del tipo de autenticación que hemos elegido para iniciar
sesión en la base de datos, podemos tener dos tipos de cadenas de
conexión:

 Autenticación Windows.

 Autenticación SQL Server o mixta.

Los parámetros más comunes que podemos utilizar para configurar la


cadena de conexión son:

Parámetro Descripción
Define el tiempo de espera máximo que debe esperar una conexión
para intentar conectar con éxito con el servidor de base de datos.
Connection TimeOut
En caso de superar este tiempo se genera una excepción. El tiempo
por defecto definido es de 15 segundos.
Recibe el nombre del servidor SQL Server utilizado en la conexión, o
Data Source en caso de utilizar bases de datos de usuario Access el nombre del
archivo utilizado.
Initial Catalog Nombre de la base de datos con la que vamos a trabajar.
Configura nuestra conexión de un modo seguro o no. Recibe como
Integrated Security valores True, False y SSPI, siendo True y SSPI el mismo modo de
seguridad.
Si recibe el valor True, se devuelve la contraseña junto con la
conexión si ha sido abierta o permanece abierta, esto supone un
Persist Security Info
riesgo de seguridad, por lo que se suele dejar como está
configurada por defecto, False.
Password Contraseña para la identificación de inicio de sesión en SQL Server.
Utilizada únicamente para conexiones OleDbConnection, establece
Provider
o devuelve el nombre del proveedor.
Nombre de usuario para el inicio de sesión en SQL Server 2005,
User ID
login.
Al ejecutar la página, si todo ha ido correctamente nos muestra el
mensaje de éxito:
Supongamos que me equivocó al crear la cadena de conexión, por
ejemplo un error muy común en el nombre del servidor, en lugar de
introducir la contrabarra "\" por la barra "/" que no es correcta:

Con este error provocado, la excepción es capturada por nuestra


estructura Try - Catch y mostrada en la página:

También podría gustarte