我想使用“adsiedit.msc”操纵某些用户的属性以进行测试。有没有办法获得完全访问权限来编辑这些值。
例如,我需要编辑 lastLogon 或 userAccountControl 值,但出现以下错误:
有没有办法使用或不使用 ADSI 编辑器来做到这一点?
答案1
有些属性归系统所有,并且永远无法通过其他方法更新。https://support.microsoft.com/en-us/kb/276382。这是导致第一个“lastLogon”错误的原因。
另一个错误看起来像是拒绝访问消息 (0x5),4003 是 INSUFF_ACCESS_RIGHTS 的另一个错误。尝试使用更强大的帐户进行更改以修改目标对象。手动调整 UAC 位掩码值可能很复杂。大多数情况下,您可以通过 ADUC(Active Directory 用户和计算机)工具中“帐户”选项卡上的“帐户属性”字段更改这些值。
答案2
不可以。
某些属性是保留的,只有操作系统才能管理它们。Active Directory 不仅仅是一个用户数据库,它还管理用户身份验证:您不能简单地让某些用户帐户表现得像其他人一样(SID/SID 历史记录),或伪造用户活动(例如上次登录)。
此外,不支持手动编辑 Active Directory 数据库 ( ntds.dit
);即使存在,AD 复制也会立即将这些更改标记为错误的。
无论你想实现什么,它都不符合 AD 规范,应该不是做完了。