Bu makalede mssql server üzerinde herhangi bir instance kurulumunda Security>login sekmesi altında default gelen kullanıcıları görmüş olacağız. Aşağıdaki resimde de görülmektedir. Şimdi bu kavramların ne işe yaradığını gözlemleyelim.

1. NT AUTHORITY\SYSTEM
- En yüksek yetkilere sahip yerleşik bir sistem hesabıdır.
- İşletim sisteminin kritik bileşenlerini ve hizmetlerini çalıştırır (örneğin, Windows Update, Disk Yönetimi).
- Kullanıcı etkileşimi olmadan arka planda çalışır ve genellikle “LocalSystem” olarak da adlandırılır.
- İşletim sistemi çekirdeğine çok yakın çalışır. Örneğin Windows servislerini başlatır/durdurur, donanım ve sistem dosyalarına tam erişimi vardır.
SQL Server Windows üzerinde çalışan bir servistir ve bazı durumlarda Windows çekirdeği seviyesinde çalışan işlemler SQL ile etkileşime girer.
Örnek:
- SQL Server servisleri SYSTEM tarafından başlatılabilir
- VSS, WMI, disk snapshot gibi Windows altyapıları SQL’e dokunduğunda SYSTEM yetkisi devreye girer
Bu yüzden SQL tarafında login olarak görünmesi normaldir, “kullanıcı gibi sorgu çalıştırıyor” anlamına gelmez.
2. NT SERVICE\SQLAgentSTEST
- SQL Server Agent hizmetine özel bir hesaptır.
- Zamanlanmış SQL job’larını çalıştırır. Örneğin gece yedek alma, bakım planı çalıştırma, otomatik script koşturma gibi işler bu hesapla yapılır.
- SQL Server’da otomatik işler (jobs), bakım planları veya uyarılar yönetmekten sorumludur.
- Job içinde CmdExec, PowerShell, SSIS gibi adımlar varsa, bunlar SQL Agent servis hesabının Windows yetkileriyle çalışır.
3. NT SERVICE\SQLTELEMETRYSTEST
- SQL Server’ın telemetri (kullanım ve hata istatistikleri) servisidir. Veritabanı işlemlerine doğrudan müdahalesi yoktur.
- Microsoft’a performans ve kullanım verileri göndererek ürün iyileştirmelerine yardımcı olur.
4. NT SERVICE\SQLWriter
- SQL Server VSS Writer hizmetinin hesabıdır.
- VSS (Volume Shadow Copy Service) ile birlikte çalışır. Örneğin Windows üzerinden “online” SQL Server yedeği alındığında, veritabanının tutarlı (consistent) durumda yedeklenmesini sağlar.
5. NT SERVICE\Winmgmt
- Windows Management Instrumentation (WMI) servisidir. Sistem izleme ve yönetim için kullanılır. Örneğin performans sayaçları, sistem bilgisi sorguları, bazı yönetim araçları bu servis üzerinden çalışır.
6. NT Service\MSSQLSTEST
- SQL Server Database Engine servisinin çalıştığı hesaptır. Veritabanı dosyalarına erişir, sorguları işler, veri okuma/yazma işlemlerini yapar. Yani SQL Server’ın “asıl çalışan motoru” bu hesaptır.
Bu hesap:
- SQL Server Database Engine servisinin Windows hesabıdır
- MDF, LDF, backup klasörlerine erişir
- Veriyi okur/yazar
SQL içinde login olarak görünmesinin sebebi:
- SQL Server kendi servis hesabını tanır
- İç işlemler, servis-bağımlı aksiyonlar için gereklidir
Bu bir “insan kullanıcısı” değil, SQL motorunun kimliği gibi düşünebilirsin.
Ortak Özellikler:
- NT AUTHORITY\ veya NT SERVICE\ örnekleri, bu hesapların yerel sistemle sınırlı olduğunu gösterir (etki alanı hesabı değil).
- Bu hesaplar, hizmetlerin güvenliğini sağlamak ve izinleri sınırlamak için kullanılır. Örneğin, bir hizmetin yalnızca belirli kaynaklara erişmesi gerekiyorsa, bu hesaplara özel izinler atanır.
- “STEST” ifadesi, bu hizmetlerin bir test SQL Server örneği (
STEST) ile ilişkili olduğunu düşündürür.
Kısacası, bu liste bir Windows sunucusunda çalışan SQL Server ve sistem hizmetlerinin kimlik bilgilerini göstermektedir.
Not: Mssql server login bölümünde bulunan sa kullanıcısı silinemez. Disable moduna çekilebilir. sa kullanıcısının disable modunda olması güvenlik açısından önerilmektedir.
Başka makalede görüşmek dileğiyle..
“Şüphesiz güçlükle beraber bir kolaylık vardır. Gerçekten, güçlükle beraber bir kolaylık vardır.” İnşirah 5-6. Ayet
