¿Cuando se puede usar conexion de confianza?

27/08/2009 - 18:46 por Tomas | Informe spam
Hola a todos.

Voy ha empezar una aplicación WinForm en C#, que trabajará contra una base
de datos SQL Server.

En principio desconozco donde estará ubicada la base de datos, puede ser
cualquier escenario, por ejemplo:

1- Una red con dominio.
2- Una red con grupo de trabajo.
3- Un PC conectado vía VPN a un servidor.
4- Un PC independiente conteniendo él mismo una versión Express de la base
de datos.

Para preveer una pantalla de configuración, donde el usuario pueda
establecer los datos necesarios para conectarse a la base de datos, tengo
unas dudas:

¿En qué escenarios se puede utilizar la conexión de confianza?, entiendo que
sólo los escenarios 1 y 4 la podrían utilizar.

El objetivo es que, siempre que se pueda, utilizar la conexión de confianza
para que no viajen por la red el nombre de usuario y la contraseña.

Por este motivo intento aclarar el concepto de la conexión de confianza,
para determinar cuando debo pedir el nombre de usuario y la contraseña en la
pantalla de configuración de la conexión que debo diseñar.

Gracias por anticipado.

Tomás.

Preguntas similare

Leer las respuestas

#1 Ruben Garrigos
27/08/2009 - 19:07 | Informe spam
La pregunta que planteas es complicada pues depende de muchos factores
del entorno. Como bien dices en principio los puntos 1 y 4 los tendrías
cubiertos casi al 100%.

El punto 2 lo podrías cubrir mediante el uso de un grupo de trabajo con
usuarios locales en cada máquina con passwords coincidentes. Sin embargo
esta opción puede requerir de cambios en las políticas de seguridad
local de sistemas operativos modernos como Windows Server 2008/Vista que
no permiten por defecto dicha funcionalidad.

El punto 3 dependerá mucho de que tipo de VPN se configure pues nada te
impide conectarte a un dominio remoto vía VPN por ejemplo. Una vez que
la VPN esté activa el acceso a los distintos servidores suele ser
transparente, como si los tuvieras en red local. No todas las VPN son
iguales tampoco y suelen ir filtradas con firewall con lo cual deberás
también asegurarte que dispones de todos los puertos que necesites abiertos.

Entiendo que con lo de pedir el nombre de usuario y la contraseña te
refieres a utilizar seguridad de SQL en vez de la de Windows integrada.
En ese caso deberías configurar todo por duplicado en plan
"usuarioWindows", "usuarioSQL" lo cual no parece muy práctico. Te
recomiendo que te decantes por una de las dos alternativas para
simplificarte la gestión de los usuarios y permisos, preferiblemente
utilizando la autentificación de Windows por su mayor seguridad y
facilidad de gestión.

Un saludo,

Rubén Garrigós
Solid Quality Mentors

Blog: http://blogs.solidq.com/es/elrincondeldba

Tomas escribió:
Hola a todos.

Voy ha empezar una aplicación WinForm en C#, que trabajará contra una base
de datos SQL Server.

En principio desconozco donde estará ubicada la base de datos, puede ser
cualquier escenario, por ejemplo:

1- Una red con dominio.
2- Una red con grupo de trabajo.
3- Un PC conectado vía VPN a un servidor.
4- Un PC independiente conteniendo él mismo una versión Express de la base
de datos.

Para preveer una pantalla de configuración, donde el usuario pueda
establecer los datos necesarios para conectarse a la base de datos, tengo
unas dudas:

¿En qué escenarios se puede utilizar la conexión de confianza?, entiendo que
sólo los escenarios 1 y 4 la podrían utilizar.

El objetivo es que, siempre que se pueda, utilizar la conexión de confianza
para que no viajen por la red el nombre de usuario y la contraseña.

Por este motivo intento aclarar el concepto de la conexión de confianza,
para determinar cuando debo pedir el nombre de usuario y la contraseña en la
pantalla de configuración de la conexión que debo diseñar.

Gracias por anticipado.

Tomás.


Respuesta Responder a este mensaje
#2 Tomas
28/08/2009 - 11:22 | Informe spam
Hola Rubén,

Por lo que he podido leer en la Web y por las pruebas de campo realizadas
por mi, me parece que no voy a poder usar siempre la conexión de confianza,
hablo siempre de aplicaciones WinForm, sistemas Windows y SQL Server.

Por lo tanto, tendré que preveer en las cadenas de conexión los dos
sistemas, la conexión de confianza y la de usuario y contraseña para
aquellos sistema que la primera no sea posible y la base de datos permita la
autenticación mixta. Esta ultima conexión no me gusta mucho porque creo que
los datos de conexión viajan a través de la red sin cifrar y puede ser
relativamente fácilmente interceptados.

Gracias por todo y cualquier sugerencia o información será bienvenida.

Tomás.
Respuesta Responder a este mensaje
#3 Ruben Garrigos
30/08/2009 - 23:55 | Informe spam
Hola Tomás,

La seguridad de los datos de conexión, así como de los datos que se
transmiten por la red entre SQL Server y el cliente, puede ser asegurada
utilizando la encriptación del protocolo TDS. Aquí te dejo un enlace de
los libros en pantalla con más información:
http://technet.microsoft.com/es-es/...89067.aspx

Un saludo,

Rubén Garrigós
Solid Quality Mentors

Blog: http://blogs.solidq.com/es/elrincondeldba

Tomas escribió:
Hola Rubén,

Por lo que he podido leer en la Web y por las pruebas de campo realizadas
por mi, me parece que no voy a poder usar siempre la conexión de confianza,
hablo siempre de aplicaciones WinForm, sistemas Windows y SQL Server.

Por lo tanto, tendré que preveer en las cadenas de conexión los dos
sistemas, la conexión de confianza y la de usuario y contraseña para
aquellos sistema que la primera no sea posible y la base de datos permita la
autenticación mixta. Esta ultima conexión no me gusta mucho porque creo que
los datos de conexión viajan a través de la red sin cifrar y puede ser
relativamente fácilmente interceptados.

Gracias por todo y cualquier sugerencia o información será bienvenida.

Tomás.


Respuesta Responder a este mensaje
#4 Tomas
31/08/2009 - 16:26 | Informe spam
Gracias Rubén, voy a mirar esto.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida