SID Nedir?
Windows işletim sisteminde her kullanıcıya benzersiz bir tanımlayıcı atanır. Bu tanımlayıcıya Security Identifier (SID) adı verilir. SID sistemdeki kullanıcı hesaplarını, grupları ve diğer güvenlik nesnelerini tanımlamak için kullanılan benzersiz bir alfasayısal dizidir.
SID bir kullanıcının veya grup hesabının kimliğini belirlemek ve ona özel erişim yetkileri atamak için kullanılır. Windows güvenlik mekanizması bir kullanıcının yetkilendirilmesi ve kimlik doğrulaması gibi işlemleri gerçekleştirirken SID’yi kullanır.
SID Neden Kullanılır?
SID güvenlik ve erişim denetimi açısından kritik bir rol oynar. Windows’ta dosyalara, klasörlere, kayıt defteri anahtarlarına ve diğer kaynaklara erişim SID’ler aracılığıyla kontrol edilir. Kullanıcı adı değiştirildiğinde bile SID değişmez böylece sistemdeki güvenlik ilkeleri ve izinler bozulmadan korunur.
Örneğin:
- Kullanıcı bir dosya oluşturduğunda o dosyanın sahipliği SID’ye bağlıdır.
- Grup politikaları SID’ler üzerinden uygulanır.
- Windows kimlik doğrulama süreçlerinde SID kullanılır.
- Active Directory ortamlarında kullanıcı ve grup hesapları için yönetim kolaylığı sağlar.
SID’nin Önemi
SID’nin en önemli yönlerinden biri kullanıcı adı değiştiğinde bile aynı kalmasıdır. Bu erişim denetimi ve güvenlik politikalarının sürdürülebilir olmasını sağlar. Sistem yöneticileri için SID’ler kullanıcı hesaplarını yönetmek, güvenlik açıklarını analiz etmek ve yetkilendirme politikalarını belirlemek açısından büyük önem taşır.
Bazı başlıca kullanım alanları:
- Yetkilendirme ve Kimlik Doğrulama: Kullanıcıların sistemde kimlik doğrulaması yaparken SID’leri kullanılır.
- Erişim Denetimi: Dosya ve dizinlere erişim kontrolü, kullanıcıların SID’sine göre belirlenir.
- Güvenlik ve İzleme: Güvenlik olaylarını ve logları analiz ederken SID’ler kullanılır.
- Grup Politikaları Yönetimi: Active Directory ortamlarında SID, grup politikalarının uygulanmasını sağlar.
- Dosya ve Klasör Yetkilendirme: SID belirli dosya ve klasörler için erişim izinlerini kontrol etmek amacıyla kullanılır.
Windows’ta Kullanıcı SID’sini Alma
Windows ortamında kullanıcıların SID’lerini öğrenmek bazen güvenlik politikaları, sistem yönetimi veya yetkilendirme işlemleri için gerekebilir. Bu işlemi gerçekleştirmek için WMIC USERACCOUNT komutunu veya PowerShell komutlarını kullanabilirsiniz.
Bir Kullanıcının SID’sini Alma
Belirli bir kullanıcının SID’sini almak için aşağıdaki komutu çalıştırabilirsiniz;
wmic useraccount where name='username' get sid
Burada ‘username‘ SID’sini öğrenmek istediğiniz kullanıcının adıdır. Örneğin, “Veli Kadir KOZAN” kullanıcısının SID’sini bulmak için aşağıdaki komutu çalıştırabilirsiniz;
wmic useraccount where name='velikadirkozan' get sid
PowerShell kullanarak aynı bilgiyi almak için şu komutu çalıştırabilirsiniz;
Get-WmiObject Win32_UserAccount | Where-Object { $_.Name -eq "JohnDoe" } | Select-Object Name, SID
Geçerli Kullanıcının SID’sini Alma
Eğer mevcut oturum açmış olan kullanıcının SID’sini almak istiyorsanız aşağıdaki komutu kullanabilirsiniz;
wmic useraccount where name='%username%' get sid
PowerShell alternatif komutu:
whoami /user
veya daha detaylı bir bilgi almak için aşağıdaki komut mevcut oturum açmış kullanıcının SID’sini ekrana yazdıracaktır.
SID’den Kullanıcı Adını Bulma
Eğer elinizde bir SID varsa ve bu SID’nin hangi kullanıcıya ait olduğunu öğrenmek istiyorsanız aşağıdaki komutu kullanabilirsiniz;
wmic useraccount where sid='S-1-3-12-1234525106-3567804255-30012867-1437' get name
PowerShell kullanarak SID ile kullanıcı adını öğrenmek için;
Get-WmiObject Win32_UserAccount | Where-Object { $_.SID -eq "S-1-3-12-1234525106-3567804255-30012867-1437" } | Select-Object Name
Bu komut ile belirtilen SID’ye sahip olan kullanıcının adını ekrana yazdıracaktır.
SID ile İlgili Diğer Faydalı Komutlar
- Tüm Kullanıcıların SID’lerini Listelemek;
wmic useraccount get name,sid
PowerShell Alternatifi:
Get-WmiObject Win32_UserAccount | Select-Object Name, SID
- Yerel Sistem SID’sini Bulmak;
whoami /user
PowerShell Alternatifi;
[System.Security.Principal.WindowsIdentity]::GetCurrent().User.Value