是否可以使用CFLDAP从仅具有组电子邮件地址的通讯组中检索所有用户?

时间:2012-01-27 21:59:23

标签: coldfusion active-directory ldap

我想使用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" >

3 个答案:

答案 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)那样指向你想要的组。