ForDear于

$a="C:\temp" #Root Folder
$L=0 #how many layers of subfolders you want to look into, 0 means only root folder. 
$p=@()

If ($L -gt 0)  #this loop is for being compatible to PS 2.0, in 3.0 above this are -Depth -Directory for Get-ChildItem to support.
{
    For ($i=0;$i -lt $L;$i++)
    {
        $s="\*"
        $a=$a+$s
        $p=$p+$a
    }
    $b=Get-ChildItem $p | ?{ $_.PSIsContainer } | select -ExpandProperty FullName
    $b=$b+$a
}
Else
{
    $p=$p+$a
    $b=Get-Item $p | ?{ $_.PSIsContainer } | select -ExpandProperty FullName
}

$b | % {
    $c=$_
    $UserName=$null
    (Get-Acl $_).Access | % {
        If ($_.IdentityReference -ilike "S-1-5-*")
        {
            $UserName=SID2Name($_.IdentityReference)
        }
        Else
        {
            $UserName=$_.IdentityReference
        }

        New-Object -TypeName PSobject -Property @{
            Path=$c
            IdentityReference=$UserName
            FileSystemRights=$_.FileSystemRights
            AccessControlType=$_.AccessControlType
        }
    }
} | Export-Csv ".\ACL.csv" -NoTypeInformation -Encoding UTF8

& ".\ACL.csv"

Function SID2Name ($SID)
{
    $objSID = New-Object System.Security.Principal.SecurityIdentifier($SID)
    Try
    {
        $objUser = $objSID.Translate([System.Security.Principal.NTAccount]) 
    }
    Catch
    {
        Return $SID
    }
    Return $objUser.Value
}

分享名称:ForDear于
文章路径:http://bzwzjz.com/article/ieegej.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 成都响应式网站建设 成都网站建设公司 重庆网站制作 品牌网站建设 营销型网站建设 网站建设推广 重庆网站建设 营销型网站建设 成都网站设计 广安网站设计 成都响应式网站建设 成都网站建设 重庆外贸网站建设 网站设计 成都网站制作 成都响应式网站建设公司 重庆网站设计 成都品牌网站设计 定制网站建设 企业网站建设 高端网站设计 营销网站建设