Integracja SQL Server z Active Directory na Windows Server – Przewodnik dla Administratorów
Integracja SQL Server z Active Directory na Windows Server – Przewodnik dla Administratorów
Wstęp
Integracja SQL Server z Active Directory (AD) na Windows Server to kluczowy element w zarządzaniu tożsamościami i kontrolą dostępu do baz danych. Umożliwia to centralne zarządzanie użytkownikami, automatyczne uwierzytelnianie i zwiększoną kontrolę nad uprawnieniami.
W tym artykule omówimy najlepsze praktyki, korzyści oraz metody integracji SQL Server z Active Directory w środowisku Windows Server.
1. Dlaczego warto integrować SQL Server z Active Directory?
Integracja SQL Server z Active Directory na Windows Server oferuje liczne korzyści, w tym:
✅ Centralne zarządzanie użytkownikami – eliminacja potrzeby tworzenia kont SQL Server dla każdego użytkownika.
✅ Bezpieczne uwierzytelnianie – korzystanie z Kerberos i NTLM do ochrony logowania.
✅ Łatwa administracja – możliwość nadawania uprawnień grupowych zamiast pojedynczych użytkowników.
✅ Audyt i monitorowanie – lepsza kontrola nad dostępem do baz danych.
✅ Zgodność z politykami bezpieczeństwa – stosowanie jednolitych zasad dla całej organizacji.

2. Wymagania wstępne dla integracji SQL Server z Active Directory
Przed rozpoczęciem konfiguracji integracji SQL Server z Active Directory należy upewnić się, że środowisko spełnia następujące wymagania:
🔹 Windows Server jako kontroler domeny (DC) – SQL Server musi znajdować się w tej samej domenie lub mieć z nią połączenie.
🔹 SQL Server zainstalowany na serwerze dołączonym do domeny Active Directory.
🔹 Konfiguracja DNS – Windows Server powinien być poprawnie skonfigurowany z DNS, który wskazuje na kontroler domeny.
🔹 Dostęp do konta z uprawnieniami administratora domeny w celu konfiguracji użytkowników i grup AD.
3. Metody integracji SQL Server z Active Directory
3.1. Uwierzytelnianie Windows Authentication
SQL Server obsługuje dwa tryby uwierzytelniania:
- Windows Authentication Mode (zalecany)
- Mixed Mode Authentication (Windows Authentication + SQL Server Authentication)
🔹 Windows Authentication Mode jest najbezpieczniejszy, ponieważ polega na uwierzytelnianiu użytkowników w Active Directory zamiast stosowania lokalnych kont SQL Server.
Jak włączyć Windows Authentication Mode?
1️⃣ Otwórz SQL Server Management Studio (SSMS)
2️⃣ Połącz się z instancją serwera SQL
3️⃣ Kliknij prawym przyciskiem myszy na instancję i wybierz Properties
4️⃣ Przejdź do zakładki Security
5️⃣ Wybierz Windows Authentication Mode i kliknij OK
6️⃣ Zrestartuj SQL Server, aby zmiany zaczęły obowiązywać
3.2. Dodawanie użytkowników i grup Active Directory do SQL Server
Aby umożliwić użytkownikom domeny logowanie do SQL Server, należy dodać ich konta lub grupy AD.
Dodawanie użytkownika AD do SQL Server za pomocą SSMS
1️⃣ Otwórz SQL Server Management Studio
2️⃣ Przejdź do Security → Logins
3️⃣ Kliknij prawym przyciskiem myszy i wybierz New Login…
4️⃣ Wybierz Search…, aby dodać użytkownika AD
5️⃣ Nadaj odpowiednie uprawnienia (np. sysadmin
, db_owner
)
6️⃣ Kliknij OK
Dodawanie grupy AD do SQL Server za pomocą T-SQL
Jeśli chcesz dodać całą grupę AD zamiast pojedynczego użytkownika, użyj poniższego polecenia:
CREATE LOGIN [Domena\NazwaGrupy] FROM WINDOWS;
ALTER SERVER ROLE sysadmin ADD MEMBER [Domena\NazwaGrupy];
✅ Zalecenie: Zamiast przypisywać uprawnienia indywidualnym użytkownikom, korzystaj z grup AD, aby ułatwić zarządzanie dostępem.
3.3. Konfiguracja uwierzytelniania Kerberos w SQL Server
Aby poprawnie działało uwierzytelnianie Windows, SQL Server powinien używać Kerberos, który zapewnia bezpieczne logowanie użytkowników.
Sprawdzenie, czy SQL Server używa Kerberos
Uruchom poniższe zapytanie w SQL Server:
SELECT auth_scheme FROM sys.dm_exec_connections WHERE session_id = @@SPID;
🔹 Jeśli wynik to NTLM, oznacza to, że SQL Server nie korzysta z Kerberos.
Rejestracja SPN dla SQL Server
Aby wymusić Kerberos, należy dodać SPN (Service Principal Name):
setspn -S MSSQLSvc/SerwerSQL:1433 Domena\KontoSerwisowe
setspn -S MSSQLSvc/SerwerSQL.domena.local:1433 Domena\KontoSerwisowe
✅ Po skonfigurowaniu SPN SQL Server powinien używać Kerberos zamiast NTLM.
4. Konfiguracja ról i uprawnień dla użytkowników AD w SQL Server
Po dodaniu użytkowników AD do SQL Server należy przypisać im odpowiednie role i uprawnienia.
Przypisanie ról użytkownikowi domenowemu
USE [master];
ALTER SERVER ROLE sysadmin ADD MEMBER [Domena\Użytkownik];
Nadanie dostępu do konkretnej bazy danych
USE [NazwaBazy];
CREATE USER [Domena\Użytkownik] FOR LOGIN [Domena\Użytkownik];
ALTER ROLE db_datareader ADD MEMBER [Domena\Użytkownik];
ALTER ROLE db_datawriter ADD MEMBER [Domena\Użytkownik];
✅ Najlepsza praktyka: Zamiast dodawać użytkowników pojedynczo, korzystaj z grup AD.
5. Monitorowanie i audyt użytkowników AD w SQL Server
Aby monitorować dostęp użytkowników AD do SQL Server, warto skonfigurować audyt logowań i zmian uprawnień.
🔹 Sprawdzenie ostatnich logowań użytkowników AD
SELECT login_name, client_net_address, auth_scheme, connect_time
FROM sys.dm_exec_sessions
WHERE login_name LIKE 'Domena%';
🔹 Śledzenie zmian uprawnień
SELECT * FROM fn_trace_gettable('C:\SQLAudit\log.trc', DEFAULT)
WHERE EventClass = 104; -- Zmiany uprawnień
✅ Zalecenie: Włącz logowanie zdarzeń w SQL Server Audit.
Podsumowanie
Integracja SQL Server z Active Directory na Windows Server pozwala na zwiększenie bezpieczeństwa i ułatwia zarządzanie użytkownikami. Kluczowe elementy to:
✅ Windows Authentication Mode – zamiast kont SQL Server.
✅ Korzystanie z grup AD – zamiast dodawania pojedynczych użytkowników.
✅ Konfiguracja Kerberos i SPN – dla bezpiecznego uwierzytelniania.
✅ Monitorowanie logowań i audyt zmian – dla pełnej kontroli nad dostępem.
Dzięki tym metodom SQL Server staje się bardziej odporny na ataki i łatwiejszy w zarządzaniu w dużych organizacjach.