我一直想知道如何使用-filter
来获得我想要的东西。我要做的是使用以下内容通过Domain Admins
语句-like
对{SID属性'找到*-512
组:
get-adgroup -filter "SID -like '*-512'"
如果我把实际的SID
,它就有效get-adgroup -filter "SID -eq 'S-1-5-21domain-512'"
我知道这样做会起作用
get-adgroup -filter * | ? {$_.SID -like '*-512'}
答案 0 :(得分:2)
作为BenH comments,由于目录中的the way SID values are stored,您无法对LDAP查询中的SID进行部分过滤。您看到的SID字符串是底层字节数组的SDDL表示。
我认为您尝试与众所周知的RID进行通配符匹配的动机是您事先不知道域SID。您可以使用Get-ADDomain
cmdlet轻松获取该内容:
$DomainSID = (Get-ADDomain).DomainSID
$DomainAdminsSid = New-Object System.Security.Principal.SecurityIdentifier ([System.Security.Principal.WellKnownSidType]::AccountDomainAdminsSid,$DomainSID)
Get-ADGroup -Filter {SID -eq $DomainAdminsSid}