HOW TO: Add additional email addresses to a recipient

by Bharat Suneja on March 16, 2007

In Exchange 2010/2007, email addresses for your recipients (users, distribuiton groups, public folders, etc.) by an Email Address Policy. In Exchange 2003/2000, this was done by a Recipient Policy. Policies are used to assign standardized email addresses across your organization following the standard naming conventions in your organization – for example: <firstinitial><lastname>@<domain>. For details, see Understanding E-mail Address Policies.

However, users frequently request additional email addresses to be added to their account. These are known as aliases or proxy addresses (the latter because email addresses are stored in the recipient’s proxyAddresses attribute in Active Directory).

Adding additional email addresses using the EMC

You can easily add additional SMTP email addresses using the EMC:

  1. Expand the Recipients node
  2. Expand the corresponding node for the recipient type: Mailbox, Distribution Group or Mail Contact
  3. Select a mailbox, Distribution Group or Contact | Properties | E-mail Addresses tab
  4. Click Add

Screenshot: Adding an alias or proxy address to a recipient in Exchange 2010
Figure 1: You can add an additional email address, known as an alias or a proxy address, from the E-mail Addresses tab in the Exchange Management Shell

Adding additional email addresses using the Shell

When adding new email addresses to a recipient using Exchange shell, remember that EmailAddresses property (or the proxyAddresses attribute in Active Directory) is a multi-valued attribute. You can use the same syntax described in the previous post “HOW TO Update multi-valued attributes in PowerShell” to add one-off email addresses that are not created by an Email AddressPolicy.

$foo = get-mailbox bsuneja
$foo.EmailAddresses += “bsuneja@e14labs.com”,”bharat.suneja@e14labs.com”
$foo | set-mailbox

Adding an additional email address in Exchange 2010

In Exchange 2010, which uses PowerShell v2, you can add an additional email address to a recipient by using a simpler one-line command:

Set-Mailbox bsuneja -EmailAddresses @{Add=’bharat.suneja@e14labs.com’}

Similarly, to remove an e-mail address in Exchange 2010:

Set-Mailbox bsuneja -EmailAddresses @{Remove=’bharat.suneja@e14labs.com’}

Once you’ve added additional email addresses for a recipient, the next common question is: Can the user send and receive email using this new email address? Find out more in HOW TO: Send as alternate email address.

{ 9 comments… read them below or add one }

1 Louis Göhl March 17, 2007 at 12:11 am

Hi Bharat,

I wanted this to work with recipients.csv as mentioned in your excellent post “Bulk creation of mailboxes using Exchange Management Shell” (http://www.exchangepedia.com/blog/2006/11/exchange-server-2007-bulk-creation-of.html)

So with this code I can use the same csv file:

Import-CSV CreateRecipients.csv | foreach {
$Temp = Get-Mailbox -identity $_.UPN
$Temp.EmailAddresses.Add($_.Emailadres1)
$Temp.EmailAddresses.Add($_.Emailadres2)
$Temp.EmailAddresses.Add($_.Emailadres3)
Set-Mailbox -Instance $Temp}

Reply

2 Anonymous June 19, 2007 at 8:04 am

How can you add custom address types such as X500 from powershell?

Reply

3 Bharat Suneja August 20, 2007 at 5:51 pm

By appending the address type, e.g.:
$foo = get-mailbox jdoe
$foo.emailaddresses += “X400:C=USA;….. “
$foo | set-mailbox

Reply

4 Anonymous February 29, 2008 at 10:52 am

When the second email address is created and then I try to send to that address it gets bounced back saying the recipient does not exist.
How can I create another email address for an existing user or users who already have email addresses?

Thanks

Reply

5 Thomas November 3, 2011 at 12:41 am

I tried to do this via automation, but have not a clue, how i can pass the @{Add=”} Block as Parameter to the Set-Mailbox command. Do you have any advice for this?

Reply

6 Andrew April 25, 2012 at 1:30 pm

How can i get this address to sort by alphabetical order.

Reply

7 Andrew April 25, 2012 at 1:33 pm

Need help with getting the list to sort by alphabetical order.

Reply

8 Fabricio September 11, 2012 at 2:53 pm

How do I set emailaddress parameter from c#.
I have a c# line like that

psh.AddParameter(“EmailAddresses”, “fabriciofernandes@senado.gov.br”);

It works replacing one of my proxy addresses.
I would like to know how do I set ADD or REMOVE from c# to EmailAddress parameter.

Reply

9 http://Www.Sigmaswan.com July 21, 2013 at 7:02 am

What is the direct e-mail address I can find to discuss with the
writer of this article?

Reply

Leave a Comment

{ 1 trackback }

Previous post:

Next post: