dataiotech Labs
Script #57
sqlserver
Securityread-onlyMin Version: 2008

SQL Server'da Sysadmin ve Riskli Login'leri Listeleme

Sysadmin rolündeki login'leri, şifre politikası uygulanmayan SQL login'lerini ve boş şifreli hesapları bulur. Güvenlik denetimi için temel kontrol.

#logins#sysadmin#hardening
sqlserver · sql
SELECT p.name AS login_name, p.type_desc, p.is_disabled,
       CASE WHEN r.member_principal_id IS NOT NULL THEN 1 ELSE 0 END AS is_sysadmin
FROM sys.server_principals p
LEFT JOIN sys.server_role_members r
       ON r.member_principal_id = p.principal_id
      AND r.role_principal_id = SUSER_ID('sysadmin')
WHERE p.type IN ('S','U','G') AND p.name NOT LIKE '##%'
ORDER BY is_sysadmin DESC, p.name;

SELECT name, is_policy_checked, is_expiration_checked
FROM sys.sql_logins
WHERE is_policy_checked = 0 OR PWDCOMPARE('', password_hash) = 1;
Operasyonel Notlar & İyileştirme Aksiyonu

Üretim ortamında çalıştırmadan önce test ortamında doğrulayın. Salt okunur teşhis sorgusudur; sistem kilitlerine yol açmaz.

Üretim Güvenliği & Çalıştırma Standartları
  • Bu script salt okunur (read-only) teşhis için tasarlanmıştır; doğrudan veri veya şema değişikliği yapmaz.
  • Ağır yük altındaki üretim sunucularında çalıştırmadan önce hedef veritabanı sürümünü (Min. Sürüm: 2008) doğrulayın.
  • İlişkili oturumu sonlandırma veya indeks silme gibi yazma etkili aksiyonlar için notlar bölümündeki komutları temkinli uygulayın.

Mühendislik Triadı: İlgili Runbook ve Kriz Müdahaleleri

Bu script hangi üretim alarmlarında ve acil durum tatbikatlarında teşhis adımı olarak çalıştırılır?

Runbook Kütüphanesi (63)
İlişkili Alarmlar ve Metrikler
M36SQL Server Başarısız Login DenemeleriSQL Server