2010-10-22 18 views

Respuesta

6

La autenticación de Windows permitirá un proceso de autenticación más uniforme, ¡inicio de sesión único!

Desde el siguiente artículo:

desventajas de autenticación de SQL Server

  • Si un usuario es un usuario de dominio de Windows que tiene un nombre de usuario y contraseña para de Windows, que todavía debe proporcionar otro (SQL Server) de inicio de sesión y contraseña para conectarse. Hacer un seguimiento de múltiples nombres y contraseñas es difícil para muchos usuarios. Tener que proporcionar credenciales de SQL Server cada vez que uno se conecta a la base de datos puede ser molesto.
  • La Autenticación del Servidor SQL no puede usar el protocolo de seguridad Kerberos .
  • Windows ofrece una contraseña adicional políticas que no están disponibles para inicios de sesión de SQL Server.

Ventajas de autenticación de SQL Server

  • permite a SQL Server soporta más edad aplicaciones y aplicaciones proporcionados por terceros que requieren autenticación de SQL Server.
  • Permite que SQL Server admita entornos con sistemas mixtos operativos , donde todos los usuarios no son autenticados por un dominio de Windows.
  • Permite a los usuarios conectarse desde dominios desconocidos o que no son de confianza. Por ejemplo, una aplicación donde los clientes establecidos se conectan con los inicios de sesión asignados de SQL para recibir el estado de sus pedidos.
  • Permite que SQL Server sea compatible con Aplicaciones basadas en web donde los usuarios crean sus propias identidades.
  • permite a los desarrolladores de software a distribuir sus aplicaciones por usando una jerarquía de permisos complejo basado en conocidos, preestablecido SQL Server inicios de sesión.

Aquí hay un buen artículo sobre los pros y los contras de cada uno. http://technet.microsoft.com/en-us/library/ms144284.aspx

+0

Es una opción intercambiable en nuestra aplicación. A la gente de TI de las organizaciones más grandes le gusta el inicio de sesión único para soporte, y a los usuarios les gusta por simplicidad. – DaveE

+0

"• Windows ofrece políticas de contraseñas adicionales que no están disponibles para los inicios de sesión de SQL Server". así las políticas de contraseña se aplican a los inicios de sesión del servidor sql al hacer clic en la opción "aplicar políticas de contraseñas". – DForck42

1

Como muchas cosas cuando se trata de implementaciones de seguridad, lo que debe hacer depende de sus objetivos.

No estoy seguro de su pregunta si tiene la intención de pasar las credenciales de cada usuario a SQL Server o si planea tener un solo inicio de sesión usando la Autenticación de Windows o la Autenticación de SQL Server. Si elige la opción posterior, la Autenticación de SQL Server es probablemente el camino a seguir, ya que limita las cuentas de red. Si elige la autenticación de Windows anterior, probablemente sea mejor para sus usuarios, ya que proporciona inicio de sesión único.

Como nota aparte, mi preferencia personal es que cada aplicación use su propio conjunto de credenciales para la interacción con la base de datos. Esto limita a los usuarios a tener solo los privilegios que les proporciona la aplicación. De esta manera, sus usuarios no necesitan preocuparse de autenticarse en la base de datos ya que su aplicación se encargará de eso.

2

Dustin escribió una buena lista de pros/cons. Sé que nadie quiere tomar una decisión como esta para usted, pero de acuerdo con sus criterios (múltiples usuarios, todos en el dominio de la empresa); No puedo pensar en una sola razón para usar la Autenticación de SQL Server en lugar de la Autenticación de Windows. Fue diseñado principalmente para escenarios como este.

+0

si uso Windows authent, ¿entonces no tengo que usar cada usuario individual en la lista de usuarios? –

+0

@i_am_a_girl Creo que la instalación predeterminada del servidor SQL permitirá que cualquiera en el mismo dominio que el servidor se conecte sin agregarlos explícitamente – bradenb

+0

el servidor está en un dominio diff –

2

Si tiene un Dominio y Active Directory, no debe ni siquiera pensar en algo más que la Autenticación de Windows .... ni un solo segundo!

+0

, aprecio tu consejo. la cosa es a veces el mismo usuario accede a la base de datos desde una ubicación diferente –

+0

una ubicación diferente en la misma red \ dominio? ¿Entonces solo tiene que iniciar sesión con sus credenciales? –

+0

Si se accede a la base de datos desde otro dominio, con otras credenciales, tendrá que administrar algo llamado 'trust de dominio' (creo que es la expresión correcta) –

1

Dado que tiene una interfaz de escritorio que se conecta directamente a la base de datos ... su mejor opción es ir con la autenticación de Windows. Tenga en cuenta que al hacer esto, el usuario puede evitar la interfaz y acceder directamente a la base de datos. Deberá otorgarles los permisos mínimos de db requeridos. Además, querrá usar un grupo de seguridad AD en lugar de agregar cada usuario.

Sql auth es mejor para cuando controla el archivo de configuración ... por ejemplo, una aplicación web.

+3

derecha. Debe tener cuidado al otorgar derechos al usuario. Pero esto es cierto cualquiera que sea el modo de autenticación.¿Cuántas bases de datos se están ejecutando con cientos de usuarios que reciben derechos de dbo, solo porque al tipo que instaló la base de datos y el software no le importa una mierda la seguridad? ¡Hay incluso uno en mi compañía! –

+1

Su nombre no es Philippe, ¿o sí? ;) –

+0

@Philippe Grondier es cierto para una aplicación de escritorio que accede directamente a una base de datos. Realmente necesita otra capa para acceder de forma segura a la base de datos ... ya sea procedimientos almacenados, servicio web, etc ... – dotjoe

Cuestiones relacionadas