You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让用户读取Active Directory中自身的机密属性?

问题描述
  • 在Active Directory架构中新增自定义属性,用于存储用户专属的软件配置链接
  • 将该属性的searchFlags设置为128(标记为机密属性),要求仅允许用户自身读取
  • 尝试为NT AUTHORITY\SELF赋予该属性的读取/完全控制权限,但用户无法读取;测试用户组权限也无效果
  • 管理员账号可正常读取该属性,测试用PowerShell命令:
(([adsisearcher]"(&(objectCategory=User)(sAMAccountName=$env:USERNAME))").findall()).properties
原因分析

AD的**机密属性(searchFlags=128)**有特殊权限控制逻辑:常规的单属性读取权限会被AD的机密属性机制覆盖,必须通过Control Access类别下的Read confidential attributes权限来授权读取,普通ACL设置无法生效。管理员账号默认拥有该控制权限,因此能正常读取。

解决方案
  1. 配置AD对象的控制权限
    • 打开「AD用户和计算机」,开启顶部菜单「查看」→「高级功能」
    • 找到目标用户对象(或对应OU,批量应用权限),右键→「属性」→「安全」→「高级」
    • 点击「添加」,主体选择NT AUTHORITY\SELF
    • 在「权限」选项卡,勾选读取机密属性权限,应用范围选择「该对象」(针对用户对象)
    • 确认所有设置并保存
  2. 验证权限
    • 使用普通用户账号重新运行测试PowerShell命令,检查属性是否出现在返回的properties集合中
    • 若未立即生效,执行gpupdate /force刷新组策略,等待权限同步

内容的提问来源于stack exchange,提问作者HExSM

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 07:09:52