Evaluating Group Membership

The IADsGroup::IsMember method takes one argument, the DN of the object to check, just as Add and Remove do. It returns a Boolean, i.e., true or false. That allows you to use it in an If . . . Then statement like this:

Set objGroup = GetObject("LDAP://cn=Managers,ou=Sales," _
  & "dc=mycorp,dc=com")
If objGroup.IsMember("LDAP://cn=Vicky Launders,ou=Sales," _
  & "dc=mycorp,dc=com") Then
    WScript.Echo "Is a Member!"
Else
    WScript.Echo "Is NOT a Member!"
End If

This should seem fairly straightforward after the examples we’ve already gone through. Two of the lines in the previous code snippet are too long to fit on the page, so the VBScript underscore (_) character was used again to tell VBScript that it should treat the current line as continuous with the next line. However, when you use the underscore to separate long strings, you must enclose both strings in quotation marks and then use the ampersand character (&) to concatenate two strings together.

To get a list of members in a group, the IADsGroup::Members method can be used. The IADsGroup::Members function is different from the other IADsGroup methods we have shown so far, since it returns a pointer to an IADsMembers object. Table 21-5 shows the two methods IADsMembers support.

Table 21-5. The IADsMembers interface

IADsMembers methods

Action

Count

The number of items in the container. If there is a filter set, only the number of items that match the filter are returned.

Filter

A filter, consisting of ...

Get Active Directory, Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.