I've been testing our scripts against 2007 and so far, so good. All we do is write homeMDB and a few other attributes to the user objects and when the first message is received by the mailbox host it initializes the mailbox. At the same time attributes such as homeMTA and mailNickName are written to the AD object as well.
> -----Original Message----- > From: Yash Vartak [mailto:var...@vartakinc.com] > Sent: Monday, January 11, 2010 8:25 AM > To: Sheahan, John; 'perl-ldap@perl.org' > Subject: Re: Creating AD account and Exchange Account > > Yes that¹s right setting attributes works fine for AD\Exchange 2003, > but > this method fails when you upgrade the setup to Exchange 2007. > > ADSI\COM , and LDAP are not supported by Exchange 2007, Exchange 2007 > is not > as tightly integrated with AD as Exchange 2003, (as in Exchange 2007 > you > can¹t right click on a AD user and select create mailbox), you need to > do it > through a different Exchange 2007 console to create a mailbox for a AD > user.) > > Regards, > Yash > > > On 1/11/10 8:56 PM, "Sheahan, John" <john.shea...@priceline.com> wrote: > > > Thanks a lot Yash. > > > > I was able to create both the AD and Exchange 2003 account from my > Perl script > > using Net Ldap. > > > > Are you saying that you think this won¹t work once I eventually go to > Exchange > > 2007? > > > > Thanks > > > > john > > > > > > > > > > From: Vartak, Yash V [mailto:yash_var...@nol.com.sg] > > Sent: Sunday, January 10, 2010 2:10 AM > > To: Sheahan, John; 'perl-ldap@perl.org' > > Subject: RE: Creating AD account and Exchange Account > > > > John, > > > > Sorry for replying this mail so late, I saw it just a day back. > > I guess you have had trouble while creating a exchange 2007 mailbox > with AD > > using perl > > > > Below is a sample code, this would create a AD active user UAC 512 > > > > $ADS_UF_NORMAL_ACCOUNT=512 > > > > sub Make_User { > > my ($objConn, $emplid, $ntID, $cn, $dn, $displayName, > > $m_server, $s_grp, $g_name, $sn, $grp, $ou, > > $dn, $company, $type, $mail, $pwd, $success) = @_; > > my ($ADS_UF_NORMAL_ACCOUNT, $objParent, $objUser); > > print LOG "make_user starting Success = $success\n" if ($debug); > > use Win32::OLE; > > Win32::OLE->Option(Warn => 2); > > > > # Taken from $ADS_USER_FLAG_ENUM > > > > print "DN = $dn\n CN = $cn\n" if($debug); > > $ADS_UF_NORMAL_ACCOUNT = 512; > > # Create base user account > > $objParent = Win32::OLE->GetObject("LDAP://".$dn); > > $objUser = $objParent->Create("user", $cn); # e.g. joes > > $objUser->Put('sAMAccountName' , $ntID); # e.g. joes > > $objUser->Put('userPrincipalName' , $ntID. "\...@ad.xyz.com"); # > e.g. > > j...@rallencorp.com > > if (($g_name) && ($g_name ne $sn)) { > > $objUser->Put('givenName', $g_name); # e.g. Joe > > } > > $objUser->Put("sn", $sn); # e.g. Smith > > $objUser->Put("displayName", $displayName); # e.g. Joe > > $objUser->SetInfo; > > if (Win32::OLE->LastError) { > > $success = 0; > > } > > # set the password, enable the account & set VPN access > > $objUser->SetPassword($pwd); > > $objUser->Put("userAccountControl", $ADS_UF_NORMAL_ACCOUNT); > > $objUser->Put("pwdLastSet", '0'); > > $objUser->Put("company", $company); > > #set dial access > > if (($grp) and ($grp ne "512")) { > > $objUser->Put('msNPAllowDialin', "TRUE"); > > } > > $objUser->SetInfo; > > if (Win32::OLE->LastError) { > > $success = 0; > > } > > } # end Make_User > > > > Once you are done with creating a active user .. use external > powershell to > > create a mail box, I know this is cumbersome but only reliable way to > create a > > mail box on Exchange 2007. > > > > enable_nt_mb.ps1 is a external power shell script to mail enable and > existing > > nt id it take ntid , mailserver, storagegrp as command line > paramenters > > > > my $yCmd="powershell -command \"& {d:\\enable_nt_mb.ps1 $ntID > $m_server > > $s_grp}\""; > > my $opCmd=`$yCmd`; > > > > Something on these lines. > > > > Regards, > > Yash Vartak > > > > > > -----Original Message----- > > From: Sheahan, John [mailto:john.shea...@priceline.com] > > Sent: Wednesday, December 30, 2009 2:07 AM > > To: 'perl-ldap@perl.org' > > Subject: Creating AD account and Exchange Account > > > > Has anyone been able to create the AD and Exchange Account from a > perl script? > > > > john > > > > Regards > > Yash > > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > Ph +65 9456 8179 | http://www.vartakinc.com > > > > >