【问题标题】:How to add permission entry with condition?如何添加带条件的权限条目?
【发布时间】:2023-03-23 13:50:02
【问题描述】:

对于 Windows 文件夹,可以输入高级安全设置。在 Windows 2016 中有框架“添加条件以限制访问。只有在满足条件时,主体才会被授予指定的权限。”

可以添加项目(= 安全组),基本上是选择一个或多个 AD 安全组(当没有进一步安装动态访问控制 (DAC) 时。

问题是,我们如何在 C#(或 powershell)中使用两个 AD 安全组添加(和删除)这样的条件。

【问题讨论】:

    标签: c# .net windows permissions ntfs


    【解决方案1】:

    一个很老的问题,但以防万一有人仍然在谷歌上寻找答案。屏幕截图中的访问规则似乎是对常规 ACL 的一种扩展。

    我发现修改它的唯一方法是通过 SDDL。

    1. 获取 ACL 对象:$acl = Get-Acl -Path $FolderPath
    2. 获取当前 SDDL 字符串:$acl.Sddl
    3. 使用这样的条件规则扩展现有条目(注意 X0x1301bf;(Member_of_any {SID(S-1-5-21-XXX-XXX-XXX-1619)}) 部分)。
    (A;OICI;FA;;;S-1-5-21-XXX-XXX-XXX-1113)
    
    (XA;OICI;0x1301bf;;;S-1-5-21-XXX-XXX-XXX-1113;(Member_of_any {SID(S-1-5-21-XXX-XXX-XXX-1619)}))
    

    可以通过检查来自 GUI 制作的对象的不同 SDDL 来了解更多示例。

    1. 修改$acl对象:$acl.SetSecurityDescriptorSddlForm($NewSddl)
    2. 重新应用到文件夹:Set-Acl -Path $FolderPath -AclObject $acl

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-01
      • 1970-01-01
      • 2014-11-02
      • 2019-04-04
      • 1970-01-01
      相关资源
      最近更新 更多