Get-Acl 帮助信息

如下说明是翻译 PowerShell : help Get-Acl 产生的帮助信息 .
译者 : Edengundam( 马涛 )
 
Get-Acl
 
摘要
获取资源的安全描述符 , 例如文件或注册表键 .
 
语法
Get-Acl [[-path] <string[]>] [-filter <string>] [-include <string[]>] [-exclude <string[]>] [-audit] [<CommonParameters>]
 
详细描述
Get-Acl cmdlet 取得表示文件或资源的安全描述符 . 安全描述符包含了资源的访问控制列表 (ACLs). ACL 指定了用户和用户组对资源具有的访问权限 .
 
参数
 
-path <string[]>
指定资源的路径 . Get-Acl 取得路径指定的资源的安全描述符 . 允许使用通配符 . 如果你省略了参数 Path, Get-Acl 取得当前目录的安全描述符 .
 
参数名称 ("-Path") 为可选项 .
 
强制参数 ?
false
参数位置 ?
1
默认值
 
允许从管道绑定输入 ?
true ( 根据值 , 根据属性名 )
允许通配符扩展 ?
true
 
-filter <string>
指定特定 provider 格式或语言的过滤器 . 此参数值用于限定 Path 参数 . 过滤器的语法取决于 provider ( 是否支持通配符也依赖 provider) . 过滤器相比其他参数更加有效 , 主要因为 provider 取值时候使用过滤器 , 而不是等到 provider 将所有内容返回后 , Windows PowerShell 过滤对象 .
 
强制参数 ?
false
参数位置 ?
named
默认值
 
允许从管道绑定输入 ?
false
允许通配符扩展 ?
false
 
-include <string[]>
取得指定的项 . 此参数值用于限定 Path 参数 . 输入一个路径元素或模式 , 例如 "*.txt" ( 此参数允许通配符 ) .
 
强制参数 ?
false
参数位置 ?
named
默认值
 
允许从管道绑定输入 ?
false
允许通配符扩展 ?
true
 
-exclude <string[]>
忽略指定的项 . 此参数值用于限定 Path 参数 . 输入一个路径元素或模式 , 例如 "*.txt" ( 此参数允许通配符 ) .
 
强制参数 ?
false
参数位置 ?
named
默认值
 
允许从管道绑定输入 ?
false
允许通配符扩展 ?
true
 
-audit <SwitchParameter>
从系统访问控制列表 (SACL) 中取得安全描述符的审计数据 .
 
强制参数 ?
false
参数位置 ?
named
默认值
False
允许从管道绑定输入 ?
false
允许通配符扩展 ?
false
 
< 公共参数 >
此命令支持公共参数 : -Verbose, -Debug, -ErrorAction, -ErrorVariable, and -OutVariable. 更多信息 , 输入 , "get-help about_commonparameters".
 
输入类型
String
 
返回类型
System.Security.AccessControl.DirectorySecurity 对象
 
注意
 
更多信息 , 输入 "Get-Help Get-Acl -detailed". 需要技术信息 , 输入 "Get-Help Get-Acl -full".
 
如果需要为该命令提供多个参数 , 请使用逗号进行分隔 . 例如 , "<parameter-name> <value1>, <value2>".
 
默认情况下 , Get-Acl 显示资源的 Windows PowerShell 路径 (<provider>::<resource-path>), 资源的属主以及访问权限 ( 资源的自由访问控制列表 (DACL) 中的访问控制项的列表或数组 ). 资源的属主控制 DACL 列表 .
 
当你将结果格式化为列表时 ("get-acl | format-list"), 除了路径 , 属主 , 访问列表外 , Windows PowerShell 还将显示如下域 :
 
·          Group: 属主的安全组 .
·          Audit:  系统访问控制列表 (SACL) 中的列表 ( 数组 ). SACL 指定了 Windows 产生的审计记录的尝试访问的类型 .
·          Sddl: 资源的安全描述以安全描述符定义语言的文本字符串格式显示 . Windows PowerShell 使用安全描述的 GetSddlForm 方法取得此数据 .
 
因为文件系统和注册表提供程序支持 Get-Acl, 你可以使用 Get-Acl 查看文件系统上对象 ( 例如 : 目录和文件 ) ACL 和注册表对象 ( 例如 : 注册表项和条目 ).
 
1
 
C:/PS>get-acl C:/windows
 
此命令取得 C:Windows 目录的安全描述符 .
 
2
 
C:/PS>get-acl C:/Windows/k*.log | select-object PSPath, Sddl | format-list
 
此命令取得 C:/Windows 目录中所有以 "k" 开头的日志文件的路径和 SDDL 字符串 .
 
命令使用 Get-Acl 取得表示每个日志文件的安全描述符 . 它将结果发送给 Select-Object cmdlet, 后者只选择 PSPath SDDL 域的值 . 接下来 , 它将结果发送给 Format-List cmdlet 将结果显示为列表形式 . 因为数值过长将会在表格中被截断 , 因此列表经常在 Windows Powershell 中使用 .
 
对于系统管理员来说 SDDL 的值非常有价值 , 这是因为这个简单的字符串包含了安全描述符中的所有的信息 . 类似的是它们能够被容易的传递和保存 , 必要的时候还可以被分析 .
 
3
 
C:/PS>get-ACL c:/windows/k*.log -Audit | foreach-object { $_.Audit.Count }
 
此命令取得目录 C:/Windows , "k" 开头的日志文件的文件描述符 . 它使用了 Audit 参数从安全描述符中的 SACL 中取得审计记录 . 接下来它使用 ForEach-Object 参数 , 来计算每个文件关联的审计记录的数量 . 结果是表示每个日志文件的审核记录数量的数值列表 .
 
4
 
C:/PS>get-acl -path hklm:/system/currentcontrolset/control | format-list
 
此命令使用 Get-Acl 取得注册表中 Control 子项 (HKLM/SYSTEM/CurrentControlSet/Control) 的安全描述符 .
 
参数 Path 指定了 Control 子项的路径 . 管道运算符 (|) Get-Acl 取得的安全描述符传给 Format-List 命令 , 后者为了方便阅读 , 将安全描述的属性格式化成一个列表 .
 
相关链接
Set-Acl
about_namespace
 

你可能感兴趣的:(Get-Acl 帮助信息)