PowerShell ile NTFS İzinleri Nasıl Listelenir?


Temel olarak zamandan tasarruf etmeyi ve verimli çalışmayı sevdiğiniz için bu sayfaya geldiğinizi varsaymak muhtemelen güvenlidir.

Bu sayfa, açık (devralınmamış) NTFS izinlerini çıkarmanıza ve bunları kolay Excel içe aktarma için listelemenize yardımcı olacaktır.

Verileri Excel'e aldıktan sonra, çıktıyı uygun gördüğünüz şekilde arayabilir ve değiştirebilirsiniz.

Bu konuda endişelenmeyin; rica ederim! ??

Hemen aşağıdaki betiği kopyalayıp istediğiniz şekilde değiştirmekten çekinmeyin.

Hibrit Office 365'i Bir Patron Gibi Yönetin

Devam etmeden önce - GERÇEKTEN çok fazla zaman kazanmak istiyorsanız Easy365Manager'a hızlıca bir göz atın.

Easy365Manager, AD ve Office 365 yönetimini birleştiren AD Kullanıcıları ve Bilgisayarlarına yönelik bir ek bileşendir.

Easy365Manager'ın gücünü tam olarak anlamak için kullanıcının şirketten ayrılması senaryosunu düşünün.

Pek çok şirkette çalışanların işten ayrılması durumunda aşağıdakine benzer bir süreç uygulanır:

  • AD kullanıcı hesabını devre dışı bırakın
  • Posta kutusunu paylaşılan bir posta kutusuna dönüştürün
  • Kullanıcıyı adres listelerinden gizle
  • Kullanıcının yöneticisine (veya yerine geçecek kişiye) iletmeyi ayarlayın
  • Kullanıcının yöneticisine (veya yerine geçecek kişiye) posta kutusu erişimi yetkisi verin
  • Şirket içi değişiklikleri Azure AD ile eşitleme
  • Office 365 lisansını geri alın

Standart araçlarla, birden fazla yönetim aracında oturum açmanız gerektiğinden bu işlem kolayca 5 ila 10 dakika arasında sürer.

Easy365Manager ile bu (genç destek tarafından) 30 saniyede yapılabilir:

Tam işlevli 30 günlük deneme sürümünü indirin ve gün bitmeden planladığınızdan daha fazla zaman kazanın!

NTFS İzinlerini Belgelemek için PowerShell'i Kullanma

Aşağıdaki komut dosyası, “D:\Data” ana klasöründeki tüm klasörleri ve alt klasörleri yineleyecektir.

$OutFile = "c:\ExplicitACLs.csv"
"Path;Access;Identity" | Out-File $OutFile
$TopFolders = Get-ChildItem "D:\Data" -Directory
ForEach ($TopFolder In $TopFolders) {
    Write-Host Processing $TopFolder.FullName ...
    $Folders = Get-ChildItem -Path $TopFolder.FullName -Recurse -Directory
    ForEach ($Folder In $Folders) {
        $ACL = Get-Acl $Folder.FullName
        ForEach ($Access In $ACL.Access) {
            If ($Access.IsInherited -eq $False) {
                $Output = $Folder.FullName + ";" + $Access.FileSystemRights + ";" + $Access.IdentityReference
                $Output | Out-File $OutFile -Append
                Write-Host $Output
            }
        }
    }
}

Yol boyunca biraz ilerleme gördüğümüzden emin olmak için alt klasörler birer birer yinelenir.

(TerraByte klasörlerini çalıştırırken ilerleme kaydedildiğini kesinlikle görmek isteriz)

Çıktı, aşağıdakileri belirten noktalı virgülle ayrılmış bir listedir:

  • Klasör/dosya yolu
  • Erişim hakları
  • Kimlik (temsilci)

Biçimlendirilmiş çıktı şuna benzer görünebilir:

Path                 Access                       Identity
D:\Data\Customers    FullControl                  E365M\MSK
D:\Data\Customers    FullControl                  E365M\ClientReps
D:\Data\Financial    ReadAndExecute, Synchronize  E365M\JWB
D:\Data\Financial    ReadAndExecute, Synchronize  E365M\Finance
D:\Data\Development  Modify, Synchronize          E365M\Dev

İPUCU: Veri miktarı çok büyük değilse incelemenize dosya izinlerini de dahil etmek isteyebilirsiniz:

Bu durumda 6. satırdaki “-Directory” anahtarını kaldırın.

Senaryoyu faydalı bulacağınızı umuyoruz! ?

İlgili makaleler