Migrating Hybrid Public Folders to Office 365

Update: Shameless plug: I’ve written more extensively about public folder migrations from both the 2007/2010 and 2013/2016 perspectives in the book, “Office 365 Administration: Inside Out,” available at http://aka.ms/thebookonit. So, tonight I started the last phase of one of my longest-running projects since joining Microsoft–an Exchange Online migration for a school district that I began…

113

Troubleshooting Mailbox Migration Error “You can’t use the domain because it’s not an accepted domain for your organization.”

While migrating users via MRS between organizations (especially to Exchange Online), a pretty common error that I run across is: You can’t use the domain because it’s not an accepted domain for your organization. This error is generated because the MailUser object of the user you’re attempting to migrate has a proxy address attached to…

14

Removing Proxy Addresses from Exchange Recipients

I saw a request come through the other day for a method to remove unwanted proxy addresses for contacts.  I’d had some code sitting around from a project a few years back and decided to freshen it up, and maybe add some newer tricks. So, the original idea was to select a bunch of users…

10

Migrating EOP Settings Between Tenants

I find myself currently writing tools to both support my and other organization projects, as well as looking for ways to refine existing tools and scripts, make my life easier for future migrations, and provide additional resources to the community to help other customers more successfully use our products. Today’s tool fulfills all of those…

2

Export and Import Calendar Processing Information

During my current project, it became necessary to capture additional calendar processing parameters that are not preserved during a normal hybrid move–such as booking policies. Some of the challenges that I faced with this tool: Blank or unpopulated attributes Conversion of sAMAccountName values to PrimarySmtpAddress Multiline attributes with special characters Attributes that were set for…

4

Fix those IMCEAEX NDRs

I had a customer migrate some mailboxes a few weeks ago, and they’re now just getting some NDRs.  Here’s a sample NDR: To fix this, you can take the NDR that you receive, copy/paste it into this function, and then take the resultant decoded x500 address and add it back to the proxyAddress array for…

2

Disable Office 365 Groups Creation

Update: There are new cmdlets available for this task.  This blog is for historical reference only.  A new, updated process is available here (https://blogs.technet.microsoft.com/undocumentedfeatures/2017/04/29/disable-office-365-groups-creation-redux/). Office 365 Groups are a (somewhat) new feature that act both like a distribution list and a public folder or shared mailbox.  When it comes to team notification and collaboration, the…

43

Create an Opt-Out Tool for Exchange Online

Earlier this week, a question popped up on a distribution list for managing an opt-out process with Exchange Online.  That wasn’t the first request I’ve seen for such a tool (in fact, I had my own customer asking for something similar).  Of course, it’s much more fun to solve someone else’s problems than your own,…

5

Updating Remote Recipient Types on-Premises

During migrations from third-party platforms like Gmail or various POP3 providers or from hosted Exchange environments, we frequently see customers provisioning remote mailboxes for shared resources. This works fine for three out of four recipient types. You can run New-RemoteMailbox for a regular user or specify a Type (Room or Equipment) to get the appropriate…


Add Office 365 Tenant Proxy Address to Exchange objects with Email Address Policy Disabled

If your organization is like a lot of them out there, you have mailbox users without the email address policy applied.  It’s a pretty common practice to work around name changes, users with similar names or middle initials, or one-off primary SMTP addresses. If that’s the case, then you probably have received this error when…