我想使用CFLDAP检索Exchange使用的某个通讯组中的所有用户。如果可以,我将如何使用CFLDAP的“过滤器”属性?此外,如果我拥有的是该组的电子邮件地址(例如'sales@example.com'),我仍然可以获取用户信息,还是需要使用该电子邮件地址的组的名称?
例如,我将在下面的块中添加什么?
<cfldap server = "foo.example.com"
action = "query"
name = "ldap2"
start = "dc=foo,dc=example,dc=com"
attributes = "givenName,sn,sAMAccountName,mail,employeeID,dn"
filter="?????????????"
username="BAR\eterps"
password="12345" >
答案 0 :(得分:4)
要从电子邮件地址获取组名,我使用了Active Directory Explorer。我确信有一种方法可以查询它。
获得组名后,我为CFLDAP创建了我的过滤器:(&amp;(objectClass = user)(memberOf = cn = Sales,ou = Email Distribution Groups,dc = foo,dc = example,dc = com) )
因此得到的CFLDAP查询如下:
<cfldap server = "foo.example.com"
action = "query"
name = "ldap2"
start = "dc=foo,dc=example,dc=com"
attributes = "givenName,sn,sAMAccountName,mail,employeeID,dn"
filter="(&(objectClass=user)(memberOf=cn=Sales,ou=Email Distribution Groups,dc=foo,dc=example,dc=com))"
username="BAR\eterps"
password="12345" >
答案 1 :(得分:0)
根据我的经验使用cfldap时不需要过滤器。在没有过滤器的情况下运行查询时会发生什么?
答案 2 :(得分:0)
如果我正确理解您的问题,您可以使用特定的 Group dn 修改start属性,而不仅仅是 Root dn ,它应该只返回来自的信息那个小组。如果有一个属性指向属于该组成员的用户,请确保将其包含在属性列表中。
如果你不修改start属性,你的过滤器就像(cn=groupname
)那样指向你想要的组。