Elecció d'un mode d'autenticació de SQL Server

Microsoft SQL Server 2016 ofereix als administradors dues opcions per implementar com el sistema autenticarà els usuaris: el mode d'autenticació de Windows o el mode d'autenticació mixta.

L'autenticació de Windows significa que SQL Server valida la identitat d'un usuari amb només el seu nom d'usuari i contrasenya de Windows. Si l'usuari ja ha estat autenticat pel sistema Windows, SQL Server no sol·licita una contrasenya.

El mode mixt fa que SQL Server habiliti l'autenticació de Windows i l'autenticació de SQL Server. L'autenticació de SQL Server crea connexions d'usuari no relacionades amb Windows.

Fonaments d'autenticació

L'autenticació és el procés de confirmació de la identitat d'un usuari o ordinador. El procés normalment consta de quatre passos:

  1. L'usuari fa una reclamació d'identitat, normalment proporcionant un nom d'usuari.
  2. El sistema desafia l'usuari a demostrar la seva identitat. El repte més habitual és la sol·licitud d'una contrasenya.
  3. L'usuari respon al repte proporcionant la prova sol · licitada, generalment una contrasenya.
  4. El sistema verifica que l'usuari ha proporcionat proves acceptables per, per exemple, comprovar la contrasenya contra una base de dades local de contrasenyes o utilitzar un servidor d'autenticació centralitzat.

Per al nostre debat sobre els modes d'autenticació de SQL Server, el punt crític es troba en el quart pas anterior: el punt en què el sistema verifica la prova de la identitat de l'usuari. L'elecció d'un mode d'autenticació determina on SQL Server va a verificar la contrasenya de l'usuari.

Sobre els modes d'autenticació del servidor SQL

Anem a explorar aquests dos modes una mica més enllà:

El mode d'autenticació de Windows requereix que els usuaris proporcionin un nom d'usuari i una contrasenya de Windows vàlids per accedir al servidor de la base de dades. Si s'escull aquest mode, SQL Server deshabilita la funcionalitat d'inici de sessió específica de SQL Server i la identitat de l'usuari es confirma únicament a través del seu compte de Windows. Aquest mode es coneix de vegades com a seguretat integrada a causa de la dependència de SQL Server a Windows per a l'autenticació.

El mode d'autenticació mixta permet l'ús de les credencials de Windows, però les complementa amb comptes d'usuaris locals d'SQL Server que l'administrador crea i manté dins del servidor SQL. El nom d'usuari i la contrasenya de l'usuari s'emmagatzemen en SQL Server, i els usuaris s'han de tornar a autenticar cada vegada que es connecten.

Selecció d'un mode d'autenticació

La recomanació de la millor pràctica de Microsoft és utilitzar el mode d'autenticació de Windows sempre que sigui possible. El principal avantatge és que l'ús d'aquest mode permet centralitzar l'administració del compte per a tota la vostra empresa en un únic lloc: Active Directory. Això redueix dràsticament les possibilitats d'error o de supervisió. Atès que Windows confirma la identitat de l'usuari, es poden configurar comptes específics d'usuaris i grups de Windows per iniciar sessió a SQL Server. A més, l'autenticació de Windows utilitza el xifratge per autenticar els usuaris de SQL Server.

L'autenticació de SQL Server, d'altra banda, permet que els noms d'usuari i les contrasenyes es passin per tota la xarxa, fent-los menys segurs. Aquest mode pot ser una bona elecció, però, si els usuaris es connecten des de diferents dominis que no són de confiança o quan possiblement s'utilitzen aplicacions d'Internet menys segures, com ara ASP.NET.

Per exemple, tingueu en compte l'escenari en què un administrador de bases de dades confiable deixa la vostra organització en condicions poc favorables. Si utilitzeu el mode d'autenticació de Windows, revocar l'accés d'aquest usuari es produeix automàticament quan desactiveu o elimineu el compte de l'Active Directory de DBA.

Si utilitzeu el mode d'autenticació mixta, no només heu de desactivar el compte de Windows DBA, sinó que també heu de combinar a través de les llistes d'usuaris locals de cada servidor de base de dades per garantir que no hi hagi comptes locals en què el DBA pugui conèixer la contrasenya. Això és molt treball.

En resum, la manera que trieu afecta tant el nivell de seguretat com la facilitat de manteniment de les bases de dades de la vostra organització.