重命名标识引用时,Get-Acl不会正确刷新acl

时间:2012-03-01 09:30:45

标签: powershell acl

我有一个带有简单ACL的目录:

Get-Acl . | Format-List命令输出以下内容

Path   : Microsoft.PowerShell.Core\FileSystem::mypath
Owner  : BUILTIN\Administrateurs
Group  : AD\Utilisateurs du domaine
Access : AD\GL_test_RW Allow  Modify, Synchronize
         AD\GL_test_RO Allow  ReadAndExecute, Synchronize

如果我使用rename-adobject命令重命名组GL_test *,并且如果重新运行Get-Acl,则组名称不会更新!

但是,如果我执行以下操作,则组的SID会被正确翻译:

$acl.access[0].IdentityReference.Translate([Security.Principal.SecurityIdentifier]).Value

但如果我将其翻译回名称,则会返回旧组名称!

如何强制Get-Acl返回正确的新组名?

2 个答案:

答案 0 :(得分:0)

在您做出更改后多久,您是否重新检查了该ACL?你确定这不仅仅是DC之间的复制延迟吗?它会在所有副本同步后立即清除吗?

答案 1 :(得分:0)

我今天遇到了同样的问题。

Get-Acl正在显示群组的“samaccountname”而不是“name”。

但是其他cmdlet(例如"Get-AdPrincipalGroupMembership")会显示组的“名称”。

我认为我的某些团体的“samaccountname”与他们的“名字”不同。

Get-AdGroup -filter * | Where-Object {$_.name -ne $_.samaccountname} | format-table name, samaccountname}

我知道这个问题是2岁,但我认为我的答案很有用。

P-S:请原谅我可怜的英语......