Attributes LDAP比较属性
我想筛选CN不等于sAMAccountName的所有LDAP对象。因此,我编写了以下查询,不幸的是,该查询既不起作用,也似乎不符合RFC:Attributes LDAP比较属性,attributes,comparison,ldap,Attributes,Comparison,Ldap,我想筛选CN不等于sAMAccountName的所有LDAP对象。因此,我编写了以下查询,不幸的是,该查询既不起作用,也似乎不符合RFC: (!(cn=sAMAccountName)) 有人知道如何实现所需的功能吗 致意 Thomas(!(cn=sAMAccountName))是“RFC兼容的”,因为断言的右侧被视为cn属性的值 使用此筛选器将导致在搜索响应中返回所有条目,其中cn属性的值存在,cn的匹配规则将false返回不区分大小写的值samaccountname(假设cn属性匹配规则未从发
(!(cn=sAMAccountName))
有人知道如何实现所需的功能吗
致意
Thomas(!(cn=sAMAccountName))
是“RFC兼容的”,因为断言的右侧被视为cn
属性的值
使用此筛选器将导致在搜索响应中返回所有条目,其中cn
属性的值存在,cn
的匹配规则将false
返回不区分大小写的值samaccountname
(假设cn
属性匹配规则未从发布的标准中更改)。结果将取决于:
- 服务器时间限制
- 服务器大小限制
- 服务器访问控制
cn=samaccount名称的值
Get-ADUser -Filter * -Server my.domain.name -Properties CN |
Where-Object {$_.CN -ne $_.sAMAccountName}
这是一个相当昂贵的查询,因为它返回PowerShell要处理的每个用户对象,但确实有效。LDAP筛选器不允许使用另一个属性的值进行筛选器比较。您必须获取条目并比较两个值。这个问题似乎没有意义。您真的想要吗要检索除该记录之外的所有记录?您的实际需求是什么?如前所述,我想检索公共名称不等于sAMAccountName的所有对象(在我的情况下是用户)。我认为查询应该是(cn!=sAMAccountName),也可以写为(!(cn=sAMAccountName))…但显然,我不是LDAP专家:)不,它只返回“cn”属性没有值“sAMAccountName”作为文本的所有记录。我认为你不能为你想要的东西编写一个过滤器。只有LHS作为属性名。请看。