Discussion:
Conectarme a una bd SQLServer ubicada en servidor web
(demasiado antiguo para responder)
Wilson Martinez
2009-03-06 21:40:07 UTC
Permalink
Hola a todos

En un formulario windows forms, como hago para abrir una base de datos
ubicada en un servidor web ? puedo en una aplicación de escritorio conectarme
a la base y agregar, modificar o eliminar registros a las tablas de esa bd ?

De antemano muchas gracias

Wilson Martinez
Colombia
Alberto Poblacion
2009-03-07 10:09:12 UTC
Permalink
Post by Wilson Martinez
En un formulario windows forms, como hago para abrir una base de datos
ubicada en un servidor web ? puedo en una aplicación de escritorio conectarme
a la base y agregar, modificar o eliminar registros a las tablas de esa bd ?
Si la base de datos está abierta al exterior (habilitada para conexiones
externas y el puerto TCP correspondiente abierto en todos los conrtafuegos),
entonces puedes conectarte desde cualquier cliente, sea Windows Forms o de
cualquier otro tipo, sin más que poner en la cadena de conexión el nombre
DNS o la dirección IP del servidor (y usar credenciales adecuadas, claro
está).

Sin embargo, esta no es una configuración recomendada. Por razones de
seguridad, en general se desaconseja dejar un servidor de base de datos
abierto al acceso desde Internet. En su lugar, y aprovechando que la máquina
en cuestión es un servidor web, lo indicado sería agregar al servidor web
una serie de WebServices que hagan de "intermediarios". Desde la aplicación
de escritorio se agregaría una Referencia Web al servicio correspondiente, y
dicho servicio expondría los métodos necesarios para agregar, modificar y
eliminar registros en las tablas de la BD.
Wilson Martinez
2009-03-09 15:03:02 UTC
Permalink
Gracias Alberto por su colaboración

Inicalmente para pruebas voy a tratar de conectarme con la IPdel servidor,
actualmente estoy trabajando localmente y utilizo la siguiente cadena de
conexión:

Data Source=NombreServidor;Initial Catalog=NombreBD;Persist Security
Info=True;User ID=Usuario;Password=Password

Para conectarme a la bd con la IP, solo tengo que cambiar NombreServidor
por la IP ?

Muchas gracias

Wilson
Post by Alberto Poblacion
Post by Wilson Martinez
En un formulario windows forms, como hago para abrir una base de datos
ubicada en un servidor web ? puedo en una aplicación de escritorio conectarme
a la base y agregar, modificar o eliminar registros a las tablas de esa bd ?
Si la base de datos está abierta al exterior (habilitada para conexiones
externas y el puerto TCP correspondiente abierto en todos los conrtafuegos),
entonces puedes conectarte desde cualquier cliente, sea Windows Forms o de
cualquier otro tipo, sin más que poner en la cadena de conexión el nombre
DNS o la dirección IP del servidor (y usar credenciales adecuadas, claro
está).
Sin embargo, esta no es una configuración recomendada. Por razones de
seguridad, en general se desaconseja dejar un servidor de base de datos
abierto al acceso desde Internet. En su lugar, y aprovechando que la máquina
en cuestión es un servidor web, lo indicado sería agregar al servidor web
una serie de WebServices que hagan de "intermediarios". Desde la aplicación
de escritorio se agregaría una Referencia Web al servicio correspondiente, y
dicho servicio expondría los métodos necesarios para agregar, modificar y
eliminar registros en las tablas de la BD.
Alberto Poblacion
2009-03-09 15:25:01 UTC
Permalink
Post by Wilson Martinez
[...]
Data Source=NombreServidor;Initial Catalog=NombreBD;Persist Security
Info=True;User ID=Usuario;Password=Password
Para conectarme a la bd con la IP, solo tengo que cambiar NombreServidor
por la IP ?
Efectivamente, la cadena de conexión quedaría asi:

Data Source=123.45.67.89;Initial Catalog=NombreBD;User
ID=Usuario;Password=Password

Para que funcione, probablemente necesitarás realizar una o más de las
siguientes operaciones:
- En el Sql Server, habilitar las conexiones externas (usar la Herramienta
de Configuración del Area Superficial).
- En el servidor windows en el que está instalado el Sql Server, si tiene
habilitado el cortafuegos (de forma predeterminada lo tendrá), abrirle paso
al Sql Server.
- En el cortafuegos externo que separa el servidor de la conexión a
internet, abrir paso para el puerto de Sql Server (usualmente el 1433).
- Si el servidor se conecta a internet a través de NAT, abrir un NAT inverso
para el puerto de Sql Server.

Loading...