Alegerea unui mod de autentificare SQL Server

Microsoft SQL Server 2016 oferă administratorilor două opțiuni pentru implementarea modului în care sistemul va autentifica utilizatorii: modul de autentificare Windows sau modul de autentificare mixt.

Autentificarea Windows înseamnă că SQL Server validează identitatea unui utilizator folosind doar numele de utilizator și parola Windows. Dacă utilizatorul a fost deja autentificat de sistemul Windows, SQL Server nu solicită o parolă.

Modul mixt înseamnă că SQL Server permite atât autentificarea Windows cât și autentificarea SQL Server. Autentificarea SQL Server creează login-uri de utilizator care nu au legătură cu Windows.

Principiile de bază ale autentificării

Autentificarea este procesul de confirmare a identității utilizatorului sau a computerului. Procesul constă, în mod normal, în patru etape:

  1. Utilizatorul face o cerere de identitate, de obicei prin furnizarea unui nume de utilizator.
  2. Sistemul provoacă utilizatorului să-și dovedească identitatea. Cea mai comună provocare este o cerere de parolă.
  3. Utilizatorul răspunde la contestație furnizând dovada solicitată, de obicei o parolă.
  4. Sistemul verifică dacă utilizatorul a furnizat o dovadă acceptabilă, de exemplu, prin verificarea parolei împotriva unei parole de parole locale sau prin utilizarea unui server centralizat de autentificare.

Pentru discuția despre modurile de autentificare SQL Server, punctul critic se află în al patrulea pas de mai sus: punctul în care sistemul verifică dovezile de identitate ale utilizatorului. Alegerea unui mod de autentificare determină locul în care SQL Server merge pentru a verifica parola utilizatorului.

Despre modurile de autentificare SQL Server

Să explorăm și mai mult aceste două moduri:

Modul de autentificare Windows necesită utilizatorilor să furnizeze un nume de utilizator și o parolă valide Windows pentru a accesa serverul bazei de date. Dacă este ales acest mod, SQL Server dezactivează funcția de conectare specifică SQL Server, iar identitatea utilizatorului este confirmată numai prin contul său Windows. Acest mod este uneori denumit securitate integrată datorită dependenței de SQL Server față de Windows pentru autentificare.

Modul de autentificare mixt permite utilizarea acreditărilor Windows, dar le suplimentează cu conturile locale de utilizator SQL Server pe care administratorul le creează și le întreține în cadrul serverului SQL Server. Numele de utilizator și parola utilizatorului sunt stocate în SQL Server, iar utilizatorii trebuie să fie re-autentificați de fiecare dată când se conectează.

Selectarea unui mod de autentificare

Recomandarea Microsoft privind cele mai bune practici este de a folosi modul de autentificare Windows ori de câte ori este posibil. Principalul beneficiu este că utilizarea acestui mod vă permite să centralizați administrarea contului pentru întreaga dvs. companie într-un singur loc: Active Directory. Acest lucru reduce dramatic șansele de eroare sau de supraveghere. Deoarece identitatea utilizatorului este confirmată de Windows, anumite conturi de utilizator și de grup Windows pot fi configurate pentru a vă conecta la SQL Server. Mai mult, autentificarea Windows utilizează criptarea pentru a autentifica utilizatorii SQL Server.

Autentificarea SQL Server, pe de altă parte, permite ca numele de utilizator și parolele să fie trecute pe toată rețeaua, făcându-le mai puțin sigure. Acest mod poate fi o alegere bună, totuși, dacă utilizatorii se conectează la diferite domenii non-sigure sau când se folosesc aplicații Internet mai puțin sigure, cum ar fi ASP.NET.

De exemplu, ia în considerare scenariul în care un administrator de baze de date de încredere lasă organizația dvs. pe termeni neprietenoși. Dacă utilizați modul de autentificare Windows, revocarea accesului respectivului utilizator are loc automat atunci când dezactivați sau eliminați contul Active DBA al companiei.

Dacă utilizați un mod de autentificare mixt, nu trebuie doar să dezactivați contul Windows DBA, dar trebuie să combinați prin lista de utilizatori locale pe fiecare server de bază de date pentru a vă asigura că nu există conturi locale în care DBA ar putea cunoaște parola. Asta-i multă muncă!

Pe scurt, modul pe care îl alegeți afectează atât nivelul de securitate, cât și ușurința întreținerii bazelor de date ale organizației dvs.