Rename user (Perl)

This code can be found in Chapter 6 of Active Directory Cookbook, 2nd edition

Purchase XP Cookbook or Networking Recipes for only $25 plus shipping! While supplies last.

Find out how to download all of the Perl code from this site.

# This Perl code renames the RDN of a user and the sAMAccountName attribute.

# ---------------------------------------------------------------
# Adapted from VBScript code contained in the book:
#      "Active Directory Cookbook" by Robbie Allen
# ISBN: 0-596-00466-4
# ---------------------------------------------------------------

# ------ SCRIPT CONFIGURATION ------
my $strParentDN    = "<ParentDN>";    # e.g. cn=Users,dc=rallencorp,dc=com
my $strUserOldName = "<OldUserName>"; # e.g. jsmith
my $strUserNewName = "<NewUserName>"; # e.g. jim
# ------ END CONFIGURATION ---------
use Win32::OLE;
$Win32::OLE::Warn = 3;
my $objCont = Win32::OLE->GetObject("LDAP://" . $strParentDN);
$objCont->MoveHere("LDAP://cn=" . $strUserOldName . "," . $strParentDN, "cn=" . $strUserNewName);
my $objUser = Win32::OLE->GetObject("LDAP://cn=" . $strUserNewName . "," . $strParentDN);
$objUser->Put("sAMAccountName", $strUserNewName);
$objUser->SetInfo;
print "Rename successful\n";

This code has been viewed 1791 times.

New from the creators of TechTasks.com: StatSheet.com