Sync disabled users (shared mailboxes) to Office 365 with Azure Active Directory Sync

I often hear customers who run an onpremises Exchange 2010 or 2013 environment in Hybrid mode with Office 365 complain about their Shared Mailboxes not appearing in Office 365 when using AADSync (or AADConnect).

This is important for mail routing if they don’t exist as contacts, or if you are using Exchange Online Protection for these mailboxes.

So, two quick steps to configure AADSync to also sync disabled users to Office 365. Continue reading Sync disabled users (shared mailboxes) to Office 365 with Azure Active Directory Sync

Multi-Threading Powershell script to Check and Repair numerous Exchange databases

For a global customer with terrabytes of Exchange 2013 data, I recently wrote a multi-threading powershell script I’d like to share with everyone.

The use case was an integrity check of the database backups prior to Exchange maintenance. First we have to commit all log files to a large number of databases, then run a surface or deep check on these databases before we can be relatively sure a restore won’t fail. Continue reading Multi-Threading Powershell script to Check and Repair numerous Exchange databases

Adding OneDrive for Business libraries to reduce sync errors

If you’re using OneDrive for Business to store a large amount of company and / or personal files, you’re like me.

And you’ve probably been frustrated running into issues using the OneDrive for Business client. It really hates it when you have over 5000 items in your account. This is annoying, because Microsoft gives us unlimited storage space in our OneDrive for Business account. But if you go over 5000, you’ll see an error message if you go into the library settings and the trouble starts.

OneDrive for Business may stop syncing files, or start eating 100% CPU capacity and simply not responding to anything. Files may never upload, or may end up in a cache where you will have no idea where it is.

What most people don’t know, is Continue reading Adding OneDrive for Business libraries to reduce sync errors

OneDriveMapper V1.6 released

Version 1.6 of OneDriveMapper will now persistently label your drive, previously it would not remember the label if the registry keys for this setting did not roam with your profile.

Thanks to Mark R, who reported the issue, the script can now also properly show popups requesting a password when run as a hidden window by Group Policy.

Get it here

Think, before you InTune

Are you considering deploying Intune? Then here are a few things you really need to know:

There is no universal enrollment experience accross devices or OS’es

When you direct your users to your Intune Portal, the portal attempts to detect the OS you’re running. If it detects Windows 7 or 8, it will display a prompt to enroll your device, the user has to download a client and wait for at least an hour, reboot for updates, etc etc. Quite a hassle, not every user will intuitively understand this process.

On Windows 8.1 or on mobile devices (iOS, Android, Windows Phone) Continue reading Think, before you InTune

Change Office 365 portal language for synced users

Users cannot change the display language of the Office 365 portal themselves if they are synced users, and they’ll receive an error. If you attempt to do this as an administrator using a Powershell command to set the PreferredLanguage attribute directly like this:

set-msoluser -userprincipalname "xxx" -PreferredLanguage "en-US"

You will see this error:

set-msoluser : Unable to update parameter. Parameter name: PreferredLanguage.
At line:1 char:1
+ set-msoluser -userprincipalname xxx -preferredlanguage "en-US"
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~
+ CategoryInfo          : OperationStopped: (:) [Set-MsolUser], MicrosoftOnlineException
+ FullyQualifiedErrorId : Microsoft.Online.Administration.Automation.PropertyNotSettableException,Microsoft.Online.Administration.Automation.SetUser

You can only set the PreferredLanguage attribute on non-synced users because this property is managed by dirsync/aadsync, and thus only settable on your onpremises Active Directory. Use ADSIEdit or Powershell to change the PreferredLanguage property locally for your users and then run a sync to change the language in Office 365.

Here’s an example PS snippet that will set (bulk change) the preferredLanguage Active Directory atrribute of all your users to Dutch:

Get-AdUser -Filter * -ResultSetSize 9999 | Set-ADUser -Replace @{‘preferredLanguage’=”nl-NL”}

If you need to look up your own language code, you can do so here

Note: if the PreferredLanguage attribute is not set, language will default to English.