sobota, 15 sierpnia 2015

Exportowanie praw dostępu w PS

Krótki kodzik, ale przydatny przy sprawdzaniu praw dostępu do plików. Chcesz wiedzieć jakie są uprawnienia - wystarczy, że uruchomisz ten PS skrypt, a on wygeneruje csv z uprawnieniami.

function Export-IOPermissions
{
    [cmdletbinding()]
    param(
        [ValidateScript({Test-Path $_ -PathType 'Container'})]    
        [string]
        $dir='.'    
        , 
        [ValidateNotNullOrEmpty()]
        [string]
        $outputcsv = '..\permissions.csv'
        ,
        [ValidateNotNullOrEmpty()]
        [string]
        $Delimiter = ','
    )

$prop = @('Path', 'Group', 'Owner', 'Sddl', 'PSChildName',  'AccessRightType', 'AccessRuleType', 'AreAccessRulesCanonical', 'AreAccessRulesProtected', 'AreAuditRulesCanonical', 'AreAuditRulesProtected', 'AuditRuleType', 'AccessToString', 'AuditToString') 
 
    if( Test-path $outputcsv)
    {
        Remove-Item -path $outputcsv | out-null
    }
gci -Recurse -path $dir  | Get-Acl | select -Property $prop  -Expand Access  |  Sort-Object  -Property, Path, FileSystemRights, IdentityReference | Export-Csv -Path $outputcsv -Delimiter $Delimiter  -NoTypeInformation -Force

}



Brak komentarzy:

Prześlij komentarz