I have a system with a million ID's or so, and we will be managing new accounts in Active Directory. For a variety of reasons, using PowerShell to call Enable-MailUser (just need them in the GAL, not to give them mail boxes).
We know from this MS article that there are a number of attributes to be twiddled. But there are some if left alone that the RUS service (Recipient Update Service) will update.
We are now at a point, where the AD admins want to know what really happens under the covers in the Enable-MailUser commandlet.
I.e. Is it the PS or RUS that sets
- LegacyExchangeDN
- proxyAddresses values for X400
- textEncodedORAddress
Then the same questions in the case of a user rename.
Actually, what do you do in Exchange if the user is renamed in AD? That is the CN component changes or the sAMAccountName changes. Which is a rename event to Exchange's world view? Do you need to recall Enable-MailUser to update the user after the data changes?
I did not yet mention which Exchange version, and that is somewhat on purpose. If the answer differs by Exchange version, then that would be critical to note!
Currently working with Exchange 2007 but they intend to move to 2010 very soon now as well.
They are convinced there is very much magic in the Enable-MailUser function, and are afraid of its voodoo power. I need to peel back the covers so that we can manage what needs to be managed without superstitious fears.
There's no RUS in Exchange Server 2007 or 2010. The Enable-MailUser cmdlet adds the appropriate attributes to the user object so yes, the cmdlet is directly accessing the user object attributes in AD. Make note that Enable-Mailbox cmdlet (in your title) will mailbox enable a user and create a mailbox for the user while the Enable-MailUser cmdlet (in your question) will only mail enable a user (no mailbox).