Microsoft SQL Server 2016 ofrece a los administradores dos opciones para implementar el sistema autenticacion a los usuarios: modo de autenticación de Windows o modo de autenticación mixta.
La autenticación de Windows significa que SQL Server valida la identidad de un usuario utilizando solo su nombre de usuario y contraseña de Windows. Si el usuario ya ha sido autenticado por el sistema de Windows, SQL Server no solicita una contraseña.
El modo mixto significa que SQL Server habilita la autenticación de Windows y la autenticación de SQL Server.
La autenticación de SQL Server crea inicios de sesión de usuario no relacionados con Windows.
CONCEPTOS BÁSICOS DE AUTENTICACIÓN
Autenticación es el proceso de confirmación de la identidad de un usuario o computadora. El proceso normalmente consta de cuatro pasos:
- El usuario hace un reclamo de identidad, generalmente al proporcionar un nombre de usuario.
- El sistema desafía al usuario a probar su identidad. El desafío más común es una solicitud de contraseña.
- El usuario responde al desafío proporcionando la prueba solicitada, generalmente una contraseña.
- El sistema verifica que el usuario haya proporcionado pruebas aceptables, por ejemplo, verificando la contraseña contra una base de datos de contraseñas local o utilizando un servidor de autenticación centralizado.
Para nuestra discusión sobre los modos de autenticación de SQL Server, el punto crítico se encuentra en el cuarto paso anterior: el punto en el que el sistema verifica la prueba de identidad del usuario. La elección de un modo de autenticación determina dónde va SQL Server a verificar la contraseña del usuario.
ACERCA DE LOS MODOS DE AUTENTICACIÓN DE SQL SERVER
Exploremos estos dos modos un poco más:
- El modo de autenticación de Windows requiere que los usuarios proporcionen un nombre de usuario y una contraseña de Windows válidos para acceder al servidor de la base de datos . Si se elige este modo, SQL Server desactiva la funcionalidad de inicio de sesión específica de SQL Server y la identidad del usuario se confirma únicamente a través de su cuenta de Windows. Este modo a veces se denomina seguridad integrada debido a la dependencia de SQL Server de Windows para la autenticación.
- El modo de autenticación mixta permite el uso de credenciales de Windows pero las complementa con cuentas de usuario locales de SQL Server que el administrador crea y mantiene dentro de SQL Server. El nombre de usuario y la contraseña del usuario se almacenan en SQL Server, y los usuarios deben volver a autenticarse cada vez que se conectan.
SELECCIONAR UN MODO DE AUTENTICACIÓN
La recomendación de mejores prácticas de Microsoft es usar el modo de autenticación de Windows siempre que sea posible. El principal beneficio es que el uso de este modo le permite centralizar la administración de cuentas para toda su empresa en un solo lugar: Active Directory. Esto reduce drásticamente las posibilidades de error o supervisión. Debido a que la identidad del usuario es confirmada por Windows, las cuentas específicas de usuarios y grupos de Windows se pueden configurar para iniciar sesión en SQL Server. Además, la autenticación de Windows usa el cifrado para autenticar a los usuarios de SQL Server.
La autenticación de SQL Server, por otro lado, permite que los nombres de usuario y las contraseñas pasen a través de la red, haciéndolos menos seguros. Sin embargo, este modo puede ser una buena opción si los usuarios se conectan desde diferentes dominios que no son de confianza o cuando se usan aplicaciones de Internet posiblemente menos seguras, como ASP.NET .
Por ejemplo, considere el escenario en el que un administrador de base de datos confiable deja a su organización en términos hostiles.
Si usa el modo de autenticación de Windows, la revocación del acceso de ese usuario se realiza automáticamente al deshabilitar o eliminar la cuenta de Active Directory del DBA.
Si usa el modo de autenticación mixta, no solo necesita deshabilitar la cuenta de Windows del DBA, sino que también necesita consultar las listas de usuarios locales en cada servidor de base de datos para asegurarse de que no existan cuentas locales en las cuales el DBA pueda conocer la contraseña. ¡Eso es mucho trabajo!
En resumen, el modo que elija afecta tanto el nivel de seguridad como la facilidad de mantenimiento de las bases de datos de su organización.