- 已创建新群组
DOMAIN\LapsAdmins
。当前为空。 - 配置 GPO
Configure Authorized password decryptors
以指向我的组DOMAIN\LapsAdmins
- 强制
server1
为本地管理员帐户创建新的加密密码 Get-LapsADPassword server1 -AsPlainText -IncludeHistory
正如预期的那样,我的用户DOMAIN\dtrevor
无法解密密码。
- 已添加
DOMAIN\dtrevor
到群组DOMAIN\LapsAdmins
- 注销并以用户身份登录
DOMAIN\dtrevor
Get-LapsADPassword server1 -AsPlainText -IncludeHistory
正如预期的那样,我的用户DOMAIN\dtrevor
可以解密并查看所有密码,包括当前密码和整个密码历史记录
DOMAIN\dtrevor
已从群组中移除DOMAIN\LapsAdmins
- 注销并以用户身份登录
DOMAIN\dtrevor
- 跑上
gpupdate /force
server1
- 强制
server1
为本地管理员帐户创建新的加密密码 Get-LapsADPassword server1 -AsPlainText -IncludeHistory
出乎意料的是,我的用户DOMAIN\dtrevor
仍然可以解密并查看所有密码,包括新生成的密码以及整个密码历史记录。为什么?
答案1
微软的 Jay Simmons 在官方博客文章关于新 LAPS 的问题。答案在第 7 页的评论部分。
问题中提到的行为是由于DPAPI的缓存机制造成的。
您很可能看到此行为,因为 DPAPI 的默认行为会缓存从 AD 检索到的解密密钥。尝试以下操作:
将用户从授权解密者组中删除
清除用户的 kerb tickets (klist purge)(或者注销\再次登录)
从用户的本地配置文件目录中删除所有缓存的 DPAPI\KDS 密钥(在配置文件中查找隐藏目录,我相信它类似于“AppData\Local\Microsoft\Crypto\KdsKey”)。
重新运行密码解密尝试 - 现在应该会失败。
这意味着只要缓存的密钥在本地机器上仍然存在,用户仍然可以解密旧密码。实际上,这似乎不是什么大问题,因为当您想要撤销访问权限时,您还会从 AD 字段中删除 ACL,因此用户首先无法访问加密值。