Wednesday, April 14, 2010

Active Directory: Copy Distribution List Members to Another Distribution List

Summary: In this example, we will copy all members from one Distribution Group to another Distribution Group.

Copy the contents below and save as copymembers.vbs to C: drive


Const ADS_GROUP_TYPE_GLOBAL_GROUP = &H2

Set objOU = GetObject("LDAP://OU=Security Groups, dc=company, dc=com")
Set objOldGroup = GetObject("LDAP://CN=mysourcegroup, ou=security groups, dc=company, dc=com")
Set objNewGroup = GetObject("LDAP://CN=mytargetgroup, ou=security groups, dc=company, dc=com")

On Error Resume Next
For Each objUser in objOldGroup.Member
objNewGroup.Add "LDAP://" & objUser
Next


Open Command prompt:

C:\>cscript copymembers.vbs


The script will copy all members in the "mysourcegroup" Distribution List to your "mytargetgroup" Distribution List.


Note: Some organizations like to use # in front of their Distribution List names so they appear together in the GAL. Because this is a special character it will need to be in double quotes to treat # as a literal.

Example:
("LDAP://""CN=mysourcegroup""


James Chong (MVP)MCSE M+, S+, MCTS, Security+
msexchangetips.blogspot.com

List member of a group in exchange

dsget group "DN_of_group" -members -expand > userlist.txt

C:\Users\jqiu-admin>dsget group "CN=Sales - Products & Services,OU=Security Grou
ps,OU=Groups,OU=Prod,DC=internal,DC=local" -members -expand > userlist.txt

C:\Users\jqiu-admin>move userlist.txt C:\Users\jqiu-admin\Desktop\temp
1 file(s) moved.

Copy group membership of a user to another user

1) Download the VB script from here:
http://www.windowsitpro.com/article/active-directory-service-interfaces-adsi/copy-group-memberships-from-one-ad-user-to-another.aspx

2) Save the script to C drive;

3) Open up an command prompt;
C:\>cscript Copymembership.vbs existingEmployee newEmployee
where ntid1 is the existing employee's username and ntid2 is the new employee's username.