Quantcast
Channel: Joe Palarchio, Author at Perficient Blogs
Viewing all 67 articles
Browse latest View live

Office 365 – The Importance of Remote Domains in Exchange Hybrid

$
0
0

When configuring an Exchange Hybrid environment, the Hybrid Configuration Wizard (HCW) handles the majority of the heavy lifting. Despite the automation of the HCW, my colleagues and I have noticed there are some settings related to “Remote Domains” that don’t always end up properly configured.

The Hybrid Configuration Wizard (HCW) has evolved since its initial release in SP2 for Exchange 2010; with each update to Exchange 2010 or Exchange 2013, it’s possible that the logic used by the HCW has been updated. So while it’s difficult to say what specific settings were configured by the HCW at the time your organization ran it, I’ve noticed that at least the current version of the Exchange 2013 HCW does not seem to properly configure “Remote Domains”.

If left misconfigured, you may find that features such as “Out of Office” and “Voting Buttons” do not function as expected in an Exchange Hybrid environment.

What is a “Remote Domain”?

Remote Domains are an organizational setting that allow you to control certain message types such as “Out of Office” and “Non-Delivery Reports”. In an Exchange Hybrid environment, they are configured independently in both the on-premises and Exchange Online organization. For more information on Remote Domains, check out: “Remote Domains in Exchange Online”.

Misconfigured Remote Domains in Exchange Hybrid

Below are the on-premises remote domains as recently configured in an environment using the Exchange 2013 CU6 HCW:
DomainName                  AllowedOOFType   TNEFEnabled
----------                  --------------   -----------
*                           External            
lab4.iwitl.com              External            
lab4.mail.onmicrosoft.com   External

…and here they are in Exchange Online as configured by the Exchange 2013 CU6 HCW:

DomainName                  AllowedOOFType   TNEFEnabled
----------                  --------------   -----------
*                           External


Below are the on-premises remote domains as recently configured in an environment using the Exchange 2010 SP3 HCW:

DomainName                  AllowedOOFType   TNEFEnabled
----------                  --------------   -----------
*                           External
lab1.iwitl.com              External
lab1.mail.onmicrosoft.com   InternalLegacy   True

…and here they are in Exchange Online as configured by the Exchange 2010 SP3 HCW:

DomainName                  AllowedOOFType   TNEFEnabled
----------                  --------------   -----------
*                           External
lab1.iwitl.com              InternalLegacy   True
lab1.mail.onmicrosoft.com   External

The Remote Domains configured by the Exchange 2010 HCW appear to be correct whereas the Exchange 2013 Remote Domains look to be misconfigured.

What’s The Impact?

The impact of misconfigured Remote Domains can largely go unnoticed, especially since the person most impacted is going to be the recipient who may not report the issue to the sender or support.

Out of Office (AllowedOOFType)
The “Out of Office” message in Exchange allows the user to setup separate responses for senders that are “inside” or “outside” your organization. This allows you to provide a more generic message to external parties while providing more detailed message or personal contact information to your coworkers. When your Remote Domains are not configured properly, you’ll find that everyone, internal and external, receives the “outside” message.

What’s interesting about this setting is that with the above 2013 settings configured by the HCW, you’ll actually receive misleading information from the Out of Office “mail tip”. When you go to send a message cross-premises, the mail tip will show the “internal” Out of Office but Exchange will actually return the “external” message.

Voting Buttons (TNEFEnabled)
Perhaps not a frequently used feature but Outlook allows you to create a poll using “voting buttons”. The idea is you email a question with either the default or custom voting buttons enabled and you can then track the recipient’s responses from the message in your “Sent Items”. If your Remote Domains are not configured properly, you may find that the recipient does not see the actual buttons to submit their vote. The problem seems to only occur for on-premises to cloud messages when configured using the above 2013 settings.

Resolution

Correcting the Remote Domains issue is not terribly difficult. Essentially you need to create/modify the appropriate Remote Domain and then properly configure the “AllowedOOFType” and “TNEFEnabled” settings.

To correct Out of Office messages sent to cloud users and the missing voting buttons, we need to change “AllowedOOFType” to “InternalLegacy” and set “TNEFEnabled” to “$true” for our coexistence domain. We can do that by using the “Set-RemoteDomain” command below in the on-premises Exchange organization:

Set-RemoteDomain "Hybrid Domain - lab4.mail.onmicrosoft.com" -AllowedOOFType InternalLegacy -TNEFEnabled $true

To correct the cloud side, we need to first create a Remote Domain and then set the appropriate properties:

New-RemoteDomain "lab4.iwitl.com" -DomainName "lab4.iwitl.com"
Set-RemoteDomain "lab4.iwitl.com" -AllowedOOFType InternalLegacy -TNEFEnabled $true

Note: As you make these changes to Remote Domains, there can be a delay before you see the changes fully implemented. So don’t be surprised in your first couple tests if you receive both the internal and external Out of Office messages.

Summary

  • Remote Domains control certain message types at an organizational level
  • The Hybrid Configuration Wizard configures Remote Domains during setup
  • Your Remote Domains could be misconfigured and it could easily go unnoticed by most
  • Misconfiguration of Remote Domains can impact “Out of Office” and “Voting Buttons”
  • Delays may occur before changes to Remote Domains actually take effect

 
Did you find this article helpful?

Leave a comment below or follow me on Twitter (@JoePalarchio) for additional posts and information on Office 365.



Office 365 – A Look Back at 21 Blog Posts in 2014

$
0
0

As we wrap up 2014, I took a quick look back at my articles for the year and the distribution of topics. This was my first year posting here on the Perficient blogs and while the frequency of my posts was not as consistent as I might have liked, I’m sure my posts will be evolving and constantly improving (much like Office 365).

I really try to focus on providing original content around Exchange Online, Lync Online or infrastructure components such as Directory Sync and AD FS. I’ve scrapped a number of posts that I started after finding the content sufficiently covered elsewhere, so hopefully what you read here is something new and interesting.

Below is a quick summary of my 21 posts in 2014, all in one spot. I have a number of posts already in the planning stages for 2015 and hope to keep a fairly regular schedule; fortunately there’s never a shortage of topics to discuss when it comes to Office 365.

If Exchange Online, Lync Online, Directory Sync or AD FS are of interest to you, there’s a number of ways to keep in touch:

  • Subscribe via my RSS feed using your favorite RSS reader (Outlook works…)
  • Leave a comment below (perhaps on a topic you’d like to see covered) which will allow you to subscribe via email.
  • Follow me on Twitter (@JoePalarchio); my feed is nearly 100% Office 365 content so you don’t have to worry about seeing pictures of my latest meal or a rant about airline luggage handling.

Thanks for reading!

See you in 2015!

Exchange Online

Migrating From Exchange 2003? – Watch Those Address Policies!
There’s a somewhat unique “feature” in Exchange 2003 that allows you to create a scenario where you could end up inadvertently changing email addresses for some users when you migrate to Office 365. This article provides a script that helps identify users with “non-compliant” email addresses.

Hybrid Wizard Fails To Update Default Address Policy
The Hybrid Configuration Wizard can have issues updating the default address policy when you have some legacy artifacts hanging around. In this article I cover the issues and provides some options for resolution.

Hybrid Wizard Fails Due To WPAD / PAC
Trying to run the Hybrid Configuration Wizard can be a headache when the Exchange server traffic is proxied. This article covers some ways to address proxies using WPAD / PAC.

Mailbox Fails to Convert During Migration
Occasionally when migrating a mailbox to Exchange Online, the on-premises object does not convert to a remote mailbox. The Microsoft instructions to resolve this situation can create a bit of a mess, this post includes a script that is a better way.

Dynamic Distribution Groups in Exchange Hybrid
Any Exchange Hybrid environment with Dynamic Distribution Groups needs the script in this post.

You’ve Migrated to Exchange Online, So Now What?
I occasionally come across Exchange admins that start questioning what their role is now that they’ve migrated to Exchange Online. There’s actually a lot to do, here are some ideas.

How to Handle “Large Messages” During Migration
Exchange Online does not allow you to migrate messages larger than 25 MB, this article provides some guidance on how to deal with this restriction.

300 Days of Mainstream Support Left for Outlook 2010
Well, 300 days at the time this post was written… Mainstream support expires for Outlook 2010 on October 13, 2015. Here I provide some options on how to stay supported with Office 365.

The Importance of Remote Domains in Exchange Hybrid
The Hybrid Configuration Wizard doesn’t always setup Remote Domains properly which can impact things like your “Out of Office” messages and “Voting Buttons”. This post helps explain that scenario and provides a resolution.

Lync Online

Understanding Archiving in Lync Online
The difference between “Conversation History” and “Archiving” is pretty confusing. This article breaks it all down in what I hope is a clear and concise manner.

Understanding Archiving in Lync Online [Mac Edition]
The same as above but on the Mac platform which adds a few little wrinkles to the mix.

Directory Sync / AD FS

Using Password Sync as a Backup to AD FS
The Microsoft guidance on how to setup Password Sync as a backup to AD FS is incorrect; this article explains why and outlines the proper process.

Assign Licensing “User Location” via Active Directory
A quick explanation of what “User Location” is in Office 365 and how you can synchronize this value from Active Directory as opposed to assigning it manually.

Script to Correct DirSync “Permission-Issue” Errors
A script to help environments where there are security restrictions in Active Directory that stop DirSync from syncing successfully.

DirSync Password Sync: Did You Know?
Five things you might not have known about Password Sync. Definitely not show stoppers but a good FYI when considering Password Sync vs AD FS.

Configuring AD FS & DirSync with an Alternate Login
A feature released in 2014 allows you to use an attribute other than UPN for your Office 365 login. This post covers how to set it up but also some of the nuances that come with implementing this feature.

Replacing the SSL Certificate in AD FS 3.0
Eventually you’ll need to replace your SSL certificate on AD FS 3.0; here’s how.

AD FS Authentication Fails Due To Time Skew
A quick troubleshooting article explaining how the time sync on your AD FS proxy can cause authentication failures.

AD FS Authentication Fails Due To Token Size
If you’ve had a number of Active Directory migrations over the years, there’s a chance you’ll run into a token size issue that can cause problems authenticating via AD FS.

Other

How to Stay Informed of Changes
An article on how I stay on top of all the changes when it comes to the ever-evolving world of Office 365.

My Experience Taking a Microsoft Certification Exam …At Home
If you need to take Microsoft certification exams as part of your job or just your career goals, you can now take some at home or in your office. This articles covers my experience with this new online exam offering.
 
Did you find this article helpful?

Leave a comment below or follow me on Twitter (@JoePalarchio) for additional posts and information on Office 365.


Office 365 – Five Exchange Online Tasks to Consider (Post-Setup)

$
0
0

You did it!

You migrated your organization’s mail environment to Exchange Online. The post-migration dust is starting to settle, the project plan tasks are nearly all checked off and you’re done, you’re finally done.

…or are you?

Below are a five tasks that can get overlooked when configuring your Exchange Online environment. While some may be optional for your organization, nearly all are quick and easy to implement.

1. Modify the Default Retention Policy

Mailboxes in Exchange Online are automatically assigned a retention policy called “Default MRM Policy”. You did check out this policy right? Microsoft has made some assumptions with this policy around keeping a tidy mailbox. While the settings are fairly conservative, we wouldn’t want emails being moved or deleted unexpectedly.

If you take a look at the “Default MRM Policy” retention policy in your tenant, you’ll see it’s primarily Personal tags that your users would need to use (or likely just ignore). There are, however, a couple settings to be aware of:

The “Default 2 year move to archive” tag does exactly that, moves emails to the archive mailbox (if enabled) after 730 days. If you don’t enable the archive mailbox, nothing will happen but you may want to remove this tag.

The “Deleted Items” and “Junk Email” folders are set to delete after 30 days. While that seems acceptable and many organizations are much more aggressive, you should at least notify users if you keep this setting and it’s different than what was previously in place.

To address these settings, you could create a new policy but that also means setting that policy for each mailbox now and in the future. The alternative is to edit the existing “Default MRM Policy” to meet your organization’s requirements by removing or changing the tags.

Additional information: Retention Tags and Retention Policies

2. Increase the Deleted Items Retention

The ability to recover a deleted message in Exchange Online is by default 14 days (the exception being mailboxes on Litigation Hold or In-Place Hold). This value, however, can be increased to a maximum of 30 days fairly easily.

There are two components to address here: First the existing mailboxes need to be addressed and then we should make this the default for any new mailboxes that are created in the future.

For existing mailboxes, you can run a command similar to below:

Get-Mailbox -ResultSize Unlimited | Set-Mailbox -RetainDeletedItemsFor 30

For new mailboxes, the “RetainDeletedItemsFor” value is one of the few settings you can change in your tenant’s mailbox plan. To set this value as the default going forward, use the following:

Get-MailboxPlan | Set-MailboxPlan -RetainDeletedItemsFor 30

There you go, you just doubled your recovery window for deleted items.

Additional information: Exchange Online users can’t keep messages for longer than 14 days in Office 365

3. Enable “End-User Spam Notifications”

Prior to Exchange Online, you may have been using a third-party spam filtering service. A common feature among these products is the ability for a user to “release” their own messages that may have been inadvertently quarantined. Users either have a URL that they know to go to in order to release the message or they receive an email notification on a scheduled basis.

In Exchange Online, users can access their spam quarantine via the URL: https://admin.protection.outlook.com/quarantine. If you want your users to receive email notifications, that needs to be configured in the service and is disabled by default.

The location of this setting is a bit hidden. If you navigate to the “Content Filter” tab within “Protection”, you’ll see a “Configure end-user spam notifications…” link on the right side. Once you find it, you basically check a single box to enable it and select a date interval (1 – 15 days) of how often you want the messages sent.

Additional information: Configure End-User Spam Notifications in Exchange Online

4. Set the Migration Endpoint Credentials

This is one you may have encountered during your migration project. If you implemented an Exchange hybrid environment as either a long-term strategy or just for migration purposes, you ran the “Hybrid Configuration Wizard” (HCW).

When running the HCW, you were asked for on-premises credentials and may have supplied your own. The credentials provided during the HCW are stored in the “Migration Endpoint” settings and are used by Exchange Online to migrate mailboxes. You may want these credentials to be non-expiring or to be a service account if you expect an extended cycle of mailbox migrations.

You can modify the endpoint using the “Set-MigrationEndpoint” cmdlet or by navigating to it in the portal. In the portal, you’ll find the endpoint by going to Recipients | Migration and then clicking the “…” and selecting “Migration Endpoints”. The account used needs to be a member of the “Recipient Management” group in the on-premises environment.

5. Enable Mailbox Audit Logging

This setting probably requires a discussion with your security team on what type of auditing they require from Exchange Online and what type of information can you provide. It’s best to have this discussion before you need the audit data, not after they come asking for it.

Enabling audit logging can be simple as running the command below:

Get-Mailbox -ResultSize Unlimited | Set-Mailbox –AuditEnabled $true

That said, take some time with this one to discuss the appropriate auditing strategy for your organization. If your organization has auditing needs then you’ll probably need to also look at using RBAC to grant people access to that data as well.

Additional information: Mailbox Audit Logging

Summary

  • All of these tasks are executed fairly easily.
  • The default Retention Policy assigned to mailboxes makes some assumptions that may not be appropriate for your organizations.
  • The Deleted Item Retention can be doubled with two quick PowerShell commands.
  • The option to notify a user of their quarantined items is available but disabled by default.
  • Credentials for mailbox migrations are stored in the Migration Endpoint; migrations will fail if these are expired.
  • Take the time discuss Mailbox Audit Logging with your security teams.

 
Did you find this article helpful?

Leave a comment below or follow me on Twitter (@JoePalarchio) for additional posts and information on Office 365.


Office 365 – New Features Appear on the Office 365 Roadmap

$
0
0

Trying to stay on top all the changes in Office 365 can be a daunting task. In a previous article, “How to Stay Informed of Changes“, I described some of the methods that I use to try and stay informed.

One of those methods, the “Office 365 Roadmap“, seems to have been updated recently with a handful of new features planned. Ideally there would be an RSS feed or an update log for the page, it’s a bit of a treasure hunt when reviewing the roadmap.

Below are a few exciting new features that look to have recently appeared on the Office 365 Roadmap.

These features are all in the “In Development” phase on the roadmap. I’m fairly certain these are all recent additions but since there is no change log, I’m just going from memory. My focus is on the Exchange Online, Lync Online and infrastructure side of things so there are likely some SharePoint or OneDrive additions hidden in there as well.

Removing Deleted Items Retention Period

The default 30-day retention period of deleted items folder on an Exchange Online mailbox will now be removed. This means the user no longer has to worry about their deleted items folder automatically deleting emails every 30 days, but instead they can choose to empty the folder at their convenience. The admin can set a limit through Exchange Admin Console and PowerShell if they want to set a default limit on the folder. This will start rolling out January 15th.

My Thoughts: This was one of things I never understood. The “Default MRM Policy” in Exchange Online has some settings that might be unexpected to some people including the forced deletion of emails and archiving after 730 days. Changing the default policy is one of my “Five Exchange Online Tasks to Consider (Post-Setup)“.

Public Folder eDiscovery & In-Place Hold

Ability to search, and place Public Folders on In-Place Hold and Legal Hold. With In-Place hold you will be able to place a time or query based hold through the eDiscovery Center.

My Thoughts: Despite all the talk about getting rid of Public Folders, it seems like Microsoft has released feature after feature that allows organizations to continue using them. So for those organizations that love their Public Folders, here’s some more functionality for you.

Drive Shipping and Network Based Data Import for Office 365

The ability to import data into Office 365 in a quick and easy manner has been a known constraint of Office 365, and a solution for this issue has emerged as a key request from customers. The engineering team has been working on a solution that will allow quicker imports of data into Exchange Online Archive Mailboxes. You will now be able to import Exchange Online data through PST files into the service without using third party tools. Drive Shipping and Network Based Ingestion options will use Azure-based services to import data. Over time we will be extending this to other data types across Office 365.

My Thoughts: This will be HUGE once it’s available. Most organizations that I’ve worked with have archives that are measured in terabytes; sending this data over the Internet is something you start measuring in weeks or months. For those that have PSTs, the old PST Capture tool is a pretty brutal experience if you have any quantity of PSTs to import. Really excited to see this one get released.

Increase Message Size limit to 50 MB

Currently EXO users maximum message size is hard coded to 35MB Send, 36MB Receive (with 25MB shown as published default). This feature will allow a tenant administrator to customize their users’ mailbox Max Message Size settings between 1MB and 150MB.

My Thoughts: From Office 365 consultants everywhere: Thank you! The current 25 MB limit can be a pain during onboarding so this is a welcome change. A little confusing is if the limit is 50 MB or 150 MB (maybe the default will be 50 MB) but either way, nice to see. The “What’s New: December 2014” post on the Office Blogs stated that the limit will be set to 150 MB immediately for onboarding purposes but the send/receive limit will not change. While we wait for this feature to be released, here is “How to Handle Large Messages During Migration“.

Exchange Transport Rule: Recipient Notification Action

The new Exchange Transport Rule Generate Recipient Notification action can be used to send a custom email notification to message recipients when a message matches the conditions of a transport rule.

My Thoughts: This is a pretty common request in the Office 365 Community forums and people try to accomplish it with Outlook rules or other workarounds. It’s nice to see that Microsoft has heard the feedback and is looking to address this; hopefully the feature has some type of mail loop detection.


One more, not really an Office 365 feature but an update to the roadmap itself:

Search

The roadmap page itself seems to have been refreshed and I see there is now a search box. I don’t recall this existing previously and it’s a nice quick way to find out what stage a feature is in (previously I would expand the page and CTRL+F for the feature).

So When Will We See These Features?

Features on the roadmap generally do not have assigned release dates so it’s difficult to say when they’ll rollout to your actual tenant. As with most Office 365 changes: watch the roadmap, watch the blogs, watch the Twitter feeds.
 
Did you find this article helpful?

Leave a comment below or follow me on Twitter (@JoePalarchio) for additional posts and information on Office 365.


Office 365 – Watch Your “Recoverable Items Quota”!

$
0
0

Many of the limits within Exchange Online are values that your users are unlikely to exceed. Despite this, we occasionally see situations where a limit is exceeded in ways you might not expect.

As perhaps best illustrated by the fabled “640K ought to be enough for anybody” quote (falsely?) attributed to Bill Gates, the requirements of users changes over time. Fortunately, Office 365 has maintained pace in most cases by raising various limits.

I recently worked with a client that exceeded the default 30 GB “RecoverableItemsQuota” value set on their mailbox. As a result, meeting invites sent to the user were being returned as undeliverable to the senders.

What is the “RecoverableItemsQuota”?

How can you tell if you’re at risk of exceeding the limit?

Is 30 GB a limit we can expect to exceed?

How can we increase the limit in Exchange Online?

First, some background on “Recoverable Items”

When a message in Exchange Online is deleted, it goes to the “Deleted Items” folder in the mailbox. If the user presses Shift+Delete or deletes the message from the “Deleted Items”, it then goes into the “Deletions” folder within the hidden “Recoverable Items” folder in the mailbox. While in the “Deletions” folder, users have the ability to recover the message themselves via Outlook or OWA. The message sits in the “Deletions” folder for 14 days by default (although this can be increased to 30 days) before it is moved to the hidden “Purges” folder and then purged from the mailbox.

The folder structure we’re talking about looks like this:


For mailboxes on holds such as “In-Place Hold” or “Litigation Hold”, the purge never occurs and the messages under hold continue to accumulate in the hidden “Purges” folder. Additionally, any changes to a message are retained through “copy on write” and stored in the hidden “Versions” folder within “Recoverable Items”.

What is the “RecoverableItemsQuota”?

The “RecoverableItemsQuota” as you might imagine is a quota for this “Recoverable Items” folder. It’s actually separate from the mailbox quota and not counted against the user’s mailbox quota. The default value for this quota in Exchange Online is 30 GB.

How can you tell if you’re at risk of exceeding the limit?

Much like your mailbox size, the size of the “Recoverable Items” folder is easily accessible via PowerShell. You can run similar scripts to run Get-MailboxStatistics and report on the “TotalDeletedItemSize” for a mailbox.

Is 30 GB a limit we can expect to exceed?

Let’s face it, 30 GB should be a pretty significant amount of deletions. Unless a mailbox is on hold, it would seem pretty unlikely that someone could queue up 30 GB of deletions in the maximum 30 day retention window. Of course, whenever there’s a limit, someone will eventually exceed it so it’s worth checking on a scheduled basis. That said, there are also situations that can occur that inflate a user’s “Recoverable Items” due to an error condition; more on that below.

How can we increase the limit in Exchange Online?

The value for “RecoverableItemsQuota” in Exchange Online cannot be changed by an admin. You can, however, open a support ticket and request an increase from Microsoft.

Fortunately, per the Office 365 Roadmap, Microsoft has begun increasing this quota to 100 GB for mailboxes that are on In-Place Hold or Litigation Hold. The feature is currently listed as “Launched” and I’ve started to see it appear in some but not all tenants.

When messages go wrong…

I recently worked with a client that was having problems receiving meeting invites. The error received by the sender is below:
STOREDRV.Deliver.Exception:QuotaExceededException.MapiExceptionShutoffQuotaExceeded; Failed to process message due to a permanent exception with message Move/Copy messages failed.
Delivery has failed to these recipients or groups:

User, Test (Test.User@iwitl.com)
There's a problem with the recipient's mailbox. Please try resending the message. If the problem
continues, please contact your helpdesk.

The following organization rejected your message: BY1PR0101MB1142.prod.exchangelabs.com.

Diagnostic information for administrators:
Generating server: DM2PR0101MB1151.prod.exchangelabs.com

Test.User@iwitl.com
BY1PR0101MB1142.prod.exchangelabs.com
Remote Server returned
'554 5.2.0 STOREDRV.Deliver.Exception:QuotaExceededException.MapiExceptionShutoffQuotaExceeded;
Failed to process message due to a permanent exception with message Move/Copy messages failed.
[Stage: OnCreatedEvent][Agent: Meeting Message Processing Agent]'

This recipient, who was on Litigation Hold, had in fact exceeded the 30 GB “Recoverable Items” limit. A ticket was placed into Microsoft and the quota was raised to 100 GB.

Looking further into the mailbox, I found that it was the “Versions” folder where nearly all of the 30 GB resided. A deeper look into the folder and there were hundreds of the same meeting invite (with a sizable attachment) repeated over and over. The meetings all had the text:

Exchange 2013 re-created a meeting that was missing from your calendar

If you’ve been paying attention to some the issues with the iOS ActiveSync client, you’ll recognize this is currently one of the issues that creeps up from time to time. Additional documentation can be found in KB3015401. As best that I could tell, the meeting invite had some corruption issues, possibly as a result of a mobile device, and since the mailbox is on Litigation Hold, any changes to that entry are then saved in the “Versions” folder. There are a number of reasons why the invite might have been updated, some related to the attachment but in any case, it was an interesting issue.

Summary

  • There is a flow to deleted messages that progress through various folders (some hidden) in the mailbox.
  • The default quota for “Recoverable Items” in Exchange Online is 30 GB.
  • PowerShell scripts can be used to report on the current size of a user’s “Recoverable Items”.
  • A ticket can be opened with Microsoft to increase the "Recoverable Items" quota.
  • The "Recoverable Items" quota is currently being increased to 100 GB for mailboxes on holds.
  • Corruption of a message can cause a user’s “Recoverable Items” to inflate if the mailbox is on hold.

 
Did you find this article helpful?

Leave a comment below or follow me on Twitter (@JoePalarchio) for additional posts and information on Office 365.


Office 365 – How to Configure UPN Filtering in AADSync

$
0
0

Azure Active Directory Sync Services (AADSync) was made “generally available” in September 2014. While the old DirSync tool is still available (and actually still linked to in the portal), AADSync should be what you’re looking to deploy at this point. As we make this transition, there is a learning curve in trying to understand how to accomplish certain tasks in AADSync that you may have previously done in DirSync.

One of the configuration settings I often implement with DirSync is the creation of a filter to only synchronize attributes with a properly formatted UPN.

Below is how this filter can be implemented using the AADSync PowerShell module.

What Are We Filtering?

Organizations commonly need to change their user’s UPNs to match their email addresses. In doing so, I find it convenient to filter out any user objects where the UPN has not been changed. So if we’re changing UPNs to “first.last@company.com”, we don’t sync anyone with a UPN that is still “username@company.local”. In the example below, I’ll configure the filter for two UPN suffixes (@company1.com and @company2.com).

Although it’s outside of the scope of what we’re doing here, I also like to use one of the Exchange custom attributes to allow for ad-hoc filtering of miscellaneous accounts. The click-by-click process for that filter is defined in the “Inbound Filtering” section of the this article: AADSync: Configuring Filtering

Why Use PowerShell?

While you can use the click-by-click process, PowerShell provides the advantage that the process is scriptable and repeatable. As a consultant, it makes my documentation much easier than pages of screenshots. Unfortunately there seems to be almost no documentation on the AADSync PowerShell module at this time; so figuring out the syntax can be a bit of a struggle right now.
Quick Tip: While you’re still learning the syntax, the AADSync “Sync Rules Editor” allows you to “Export” a filter and provides the relevant PowerShell for that filter.


Creating The Filter

If the AADSync PowerShell module is not loaded for some reason, you’ll want to load it:
Import-Module ADSync

Next, we’ll want to determine the “Identifier” for our Active Directory connector:

Get-ADSyncConnector | FT Name, Identifier

The above environment has two Active Directory forests (lab4.iwitl.net and lab5.iwitl.net) configured in AADSync. We’ll setup the filter on the lab4.iwitl.net (bfd53bb7-8bde-4b13-8136-decb91e29d13) connector.

Now we create the filter for the connector:

New-ADSyncRule  `
-Name 'In from AD - User Filter by UPN' `
-Description 'Only sync users with company1.com and company2.com UPN suffixes' `
-Direction 'Inbound' `
-Precedence 50 `
-SourceObjectType 'user' `
-TargetObjectType 'person' `
-Connector 'bfd53bb7-8bde-4b13-8136-decb91e29d13' `
-LinkType 'Join' `
-SoftDeleteExpiryInterval 0 `
-ImmutableTag '' `
-OutVariable syncRule

Add-ADSyncAttributeFlowMapping  `
-SynchronizationRule $syncRule[0] `
-Source @('userPrincipalName') `
-Destination 'cloudFiltered' `
-FlowType 'Expression' `
-ValueMergeType 'Update' `
-Expression 'IIF((InStr(LCase([userPrincipalName]), "@company1.com") = 0 && InStr(LCase([userPrincipalName]), "@company2.com") = 0), True, NULL)' `
-OutVariable syncRule

Add-ADSyncRule -SynchronizationRule $syncRule[0]

With the above filter you’ll want to pay attention to the “precedence” and make sure it doesn’t conflict with any other filters you’ve created. Also important to note is that the “InStr” function appears to be case-sensitive thus the use of “LCase”. Additional documentation on the functions can be found at: Azure AD Sync Functions Reference.

Summary

  • DirSync is being replaced by AADSync and should be used in new deployments.
  • Understand what type of filtering is supported.
  • Documentation on the AADSync PowerShell module is a bit non-existent at the moment.
  • Using PowerShell to create your filters is repeatable and easier to document.
  • Be sure to check out the AADSync “best practices for changing the default configuration“.

 
Did you find this article helpful?

Leave a comment below or follow me on Twitter (@JoePalarchio) for additional posts and information on Office 365.


Office 365 – How To Update Your Azure AD PowerShell Module

$
0
0

In my post “How to Stay Informed of Changes“, I covered some of the different information sources I use to keep track of changes in Office 365. Something I’ve since added to that list is the version release history page for the Azure Active Directory PowerShell Module. The page has an RSS feed which you can add to Outlook or your favorite RSS reader to get notified of updates.

The Azure AD PowerShell Module is something that is easy to forget about. You likely installed it when you first started working with Office 365 and may not have touched it since then.

It still connects, so why bother updating?

Why Update?

Obviously bug fixes are part of almost any update but with Office 365 even more important are the additions made to support new features. When you consider that the service side of Office 365 is always improving, it becomes critical that the connecting client components keep up with those changes. This is why you will see Microsoft stating that they only support versions of Office in mainstream support or that have been updated in the last 12 months.

Do I Need An Update?

Fortunately, Microsoft has started providing a nice little reminder that your PowerShell module is out of date. You’ve likely seen this little reminder when connecting to Azure AD:

There is a newer version of the Microsoft Online Services Module. Your current version will still work as expected, however the latest version can be downloaded at https://portal.microsoftonline.com.

Aside from the above warning, you can check your version against the version release page by running the following command:

(Get-Item C:\Windows\System32\WindowsPowerShell\v1.0\Modules\MSOnline\Microsoft.Online.Administration.Automation.PSModule.dll).VersionInfo.FileVersion

Running The Update

Updating the module only takes a matter of minutes. Essentially just uninstall the current installation via “Programs and Features” and grab the appropriate link from the version release page.

After the update, you should be able to connect to Azure AD without the friendly warning message.

Summary

  • Watch the RSS feed on the version release page to get notified of updates.
  • New Office 365 features may require new versions of the Azure AD PowerShell module.
  • Updating takes only a few minutes.

 
Did you find this article helpful?

Leave a comment below or follow me on Twitter (@JoePalarchio) for additional posts and information on Office 365.


Office 365 – Microsoft’s Proactive Notification of User Issues

$
0
0

You would think that after working in technology for around 20 years, the “awe factor” would start to wear down. The fact is, I’m still amazed by some of the features that companies like Microsoft develop and how they manage to continuously push out great new functionality to their clients. With Office 365, it’s a continuous stream of features that either assists IT departments or provides added functionality for users with the end result of providing a better user experience through technology.

Today was another one of those “that just makes so much sense” moments where Microsoft was able to use the supporting infrastructure behind Office 365 to improve the user experience.

I’m referring to this email below that I received:

Update Outlook to Stop Connectivity Issues

I assume using client logging information from our users, Microsoft was able to identify that a small batch of users are connected with an out-of-date version of Outlook. In the email communication, I was provided a list of the affected users and the potential symptoms they may be seeing.

So simple yet so helpful.

Now you could likely implement something similar in an on-premises Exchange environment. I’m sure someone has done it already and you might even find a script out on the Internet or a package you can purchase. This however, just popped in my inbox with no additional effort or costs based out of Microsoft’s desire to ensure a good user experience.

Well done Microsoft!
 
Did you find this article helpful?

Leave a comment below or follow me on Twitter (@JoePalarchio) for additional posts and information on Office 365.



Office 365 – Two Azure AD Premium Features Coming To All Subscribers

$
0
0

The Office 365 Roadmap can be a bit of a treasure hunt at times. It’s great that Microsoft provides transparency into what is planned or in progress but figuring out when the roadmap has changed or what has changed on it can be a bit of a challenge.

I noticed that the roadmap was updated this weekend. In the update, a number of features were changed from “Launched” to “Previously Released” and there were a few additions that were basically informative (e.g. the planned rename of “Lync Online” to “Skype for Business Online”).

There was, however, one addition to the “In Development” section that stood out:

Sign-in Page Branding enables an Office 365 customer to select custom colors, text and Imagery for their Office 365 sign-in page. Self Service Password Reset allows a user who has forgotten their password to reset it based on prearranged alternative personal information. These two features were previously available with the Azure AD Premium subscription and are now being made available to all Office 365 subscribers.

So it looks like two features that were previously only available to Azure AD Premium subscribers will eventually be made available to all subscribers.

A little more info on these two features…

Sign-In Branding

Quite a few clients ask about how they can do this. While Microsoft recently added the ability to customize your organization’s user experience through the use of themes, this was limited to pages after the login. Subscribers of Azure AD Premium have had the ability to customize the sign-in page and get rid of this image:

I’m sure a number of clients will be excited when this feature is released, especially since it appears like it would be something added at zero cost.

Self Service Password Reset (SSPR)

This feature allows users to reset their Azure AD password via the portal through the use of an alternate email address, text message, phone call or challenge questions. Hopefully this implementation will also include the “Password Writeback” functionality that is also available in Azure AD Premium, otherwise it would only apply to cloud identities and would have limited use. Possibly a great self service password reset option for organizations that don’t have that functionality today.


Like all items on the roadmap, there’s no specific launch date and features tend to roll out over a period of time across tenants.

Keep watching the roadmap and hopefully these will transition to the “Rolling Out” section soon!
 
Did you find this article helpful?

Leave a comment below or follow me on Twitter (@JoePalarchio) for additional posts and information on Office 365.

Office 365 – Common Exchange Online Hybrid Mail Flow Issues

$
0
0

Exchange Hybrid, when configured properly, can provide almost seamless coexistence between Exchange Online and your on-premises Exchange environment. Part of this concept is that while you technically have two separate Exchange organizations, the mail flow between these organizations appears “internal” so that a message from a cloud user looks no different than a message from an on-premises user.

As a consultant nearly 100% focused on Exchange Online migrations, I’ve come across a variety of situations where hybrid mail flow is not working properly. If you spend any time browsing the Office 365 Community Forums, you’ll see a number of posts on this same issue.

Even if the Hybrid Configuration Wizard completed successfully, it does not mean that hybrid mail flow is setup properly. In some cases, mail will actually be routing between organizations and it may seem like everything is working. A deeper look into the messages and you might find that while they are routing, they are not appearing as “internal”.

Below are some of the things to look for and how to resolve these hybrid mail flow issues.

The Configuration Basics

Before we jump into identifying issues, it’s important to understand how hybrid mail flow is configured. Among other tasks, the Hybrid Configuration Wizard (HCW) creates send and receive connectors in the on-premises Exchange organization and in Exchange Online. These connectors, along with a proper network configuration, are the foundation of hybrid mail flow.

There are some differences in how the configuration is setup in Exchange 2010 versus Exchange 2013 which is why you’ll see some issues on one platform and not the other.

For Exchange 2010, the HCW creates an on-premises send connector called “Outbound to Office 365″ and an on-premises receive connector called “Inbound from Office 365″; the receive connector has a list of the Exchange Online Protection (EOP) IP addresses on it so that messages from EOP use this connector instead of the default receive connector. In the cloud, the HCW creates an inbound connector and outbound connector; the inbound connector is scoped to the source IP you provided in the HCW.

For Exchange 2013, the HCW creates an on-premises send connector called “Outbound to Office 365″ but does not create a new receive connector. In this case, the “Default Frontend” receive connector is modified for hybrid mail flow and instead of using a list of IPs, a certificate is used to force hybrid mail flow. In the cloud, inbound and outbound connectors are created and again the inbound connector uses a certificate instead of IP address for security.

If you’ve modified the connectors created by the HCW in an attempt to “make things work”, there’s a good chance you’ll want to delete them and let the HCW recreate them so you can identify the true root cause of your mail flow problem.

But My Mail Is Routing… So It Must Be Working

There are a number of symptoms that might indicate that hybrid mail flow is not working properly even when messages are routing. If messages between environments occasionally end up in a user’s junk mail, that’s definitely a good sign there is a misconfiguration. Issues booking conference rooms or receiving the wrong out-of-office message are also symptoms.

It basically comes down to whether the messages between environments appear as “internal” or “external”. So just like a conference room is not going to accept a booking request from a random Internet user, it won’t accept a booking from your cloud user if that message appears as external.

The quick way to check is to look at a message received in each environment and check the message headers. If the header “X-MS-Exchange-Organization-AuthAs” says “Internal”, then all is well; if the header says “Anonymous”, you may have one of the issues below.

Issue #1: Incorrectly Configured Hybrid Routing Domain (Exchange 2010)

This issue will actually cause hybrid mail flow to fail to route. In Exchange 2003 environments, the Exchange 2010 HCW does not properly configure the hybrid routing domain (tenant.mail.onmicrosoft.com); this domain should be configured as “Internal Relay” as opposed to “Authoritative”. While this used to be a somewhat undocumented step, it has since been documented in the “Exchange Server Deployment Assistant“.

Issue #2: Not Preserving EOP Source IP (Exchange 2010)

Since the Exchange 2010 HCW creates a new receive connector for Office 365 that is secured by the Exchange Online Protection (EOP) IP addresses, it’s important that the Exchange server sees the proper source IP for mail messages. If your traffic is going through a firewall or load balancer that is replacing the EOP source IP with it’s own, the traffic will end up hitting the default receive connector in Exchange instead of the Office 365 one. The best way to identify this is to enable verbose logging on both receive connectors and see where your connections are landing. Resolving this issue depends on the hardware in the mail path but the final solution needs to be that the Exchange 2010 server sees the EOP IP address and has a proper route back to it.

Issue #3: Improperly Configured “Remote Domains” (Exchange 2013)

If users are getting the “external” out-of-office instead of the “internal” out-of-office or your “voting buttons” are not working, it’s possibly due to misconfigured remote domains. What I’ve noticed is that some versions of the HCW do not configure your “Remote Domains” properly. I put together a post specific to this issue and the easy resolution: “The Importance of Remote Domains in Exchange Hybrid“.

Issue #4: SSL Certificate Mismatch (Exchange 2013)

After renewing your SSL certificate on Exchange 2013, you may find that you have issues with your hybrid mail flow. Recall that the Exchange 2013 HCW uses the certificate on the on-premises receive connector and the inbound connector in the cloud. Fortunately Microsoft has documented this issue: “Can’t receive mail in an Exchange 2013-based hybrid environment after you install a new certificate on the server (KB2989382)“.

Issue #5: Use Of A Third-Party SMTP Gateway (Exchange 2010 / 2013)

This one comes up on the Office 365 Community Forums quite often. Microsoft does not support any third-party SMTP gateways between EOP and the on-premises hybrid connectors; the only supported device is an Exchange Edge Transport server.


While you can leave your non-hybrid traffic routing through a third-party appliance, using it in the middle of your hybrid mail flow may cause messages to appear as external and is not supported.

Issue #6: Failing To Update EOP IP Addresses (Exchange 2010 / 2013)

It’s not uncommon for organizations to secure port 25 on their firewall by locking down the hybrid traffic to just the Exchange Online Protection (EOP) IP addresses. This same list of IPs is on the receive connector in Exchange 2010. As you might imagine, this list of IPs is subject to change and has changed a fair amount recently. Make sure your rules and connectors are current to the Exchange Online Protection IP addresses list. This list has an RSS feed that can be added to your favorite RSS reader or even Outlook.

Issue #7: Firewall Blocking STARTTLS Command (Exchange 2010 / 2013)

Some firewalls have protocol inspection packages that cause issues with the TLS connection. If you telnet from the Exchange server to an Internet target and see a bunch of asterisks in the response, this is likely the issue.
Normal

Non-Working

Microsoft has some notes on various firewall vendors and what they each call this feature: “Cannot send or receive e-mail messages behind a Cisco PIX or Cisco ASA firewall (KB320027)“.

Issue #8: Blacklisted IP Address (Exchange 2010 / 2013)

In situations where a new server is deployed for hybrid, it may not have received the proper due diligence from a network planning perspective. I have seen multiple situations where the server with the outbound hybrid connector can send outbound on port 25 but the IP address is the same IP address used by the organization’s general Internet traffic. In many cases, this IP address is already blacklisted or will end up blacklisted and if that occurs, EOP will stop accepting your messages. Make sure there is a source NAT in place for your hybrid server such that the source IP does not appear on any realtime blacklists.

Summary

  • Just because mail routes, doesn’t mean hybrid mail flow is working properly.
  • Check the message headers of cross-premises messages to verify proper configuration.
  • Exchange 2010 and Exchange 2013 have different configurations for hybrid mail flow.
  • Attempts to create “workarounds” to issues may succeed in routing mail but may break hybrid mail flow.

 
Did you find this article helpful?

Leave a comment below or follow me on Twitter (@JoePalarchio) for additional posts and information on Office 365.


Office 365 – How to Update Address Lists in Exchange Online

$
0
0

Address Lists are a way to create an additional “view” within the Global Address List (GAL) based on a set of mailboxes attributes.

As an example, perhaps you want to create a view for everyone with the “Office” of “Headquarters”. This new Address List would appear as an additional dropdown in both Outlook and OWA. Address Lists are also part of Address Book Policies (ABPs) should you want to have actual segmentation of your GAL.

However, with Exchange Online, there is a small issue with Address Lists that can make them challenging to work with.

The Issue

An interesting limitation in Exchange Online is that there is no “Update-AddressList” cmdlet. So if your users are already provisioned in your Office 365 tenant (which will nearly always be the case) and you go create an Address List, the contents of the Address List are never updated until there is a change made to every object that should be in scope.

When I first experienced this issue, I ran across a blog post by the Exchange Team with the entertaining suggestion to “tickle” the mailbox. Yes, “tickle”.

For the purposes of this article, we’ll use this completely unofficial definition that I’ve made up:

tick•le (ti-kəl) v. to change an attribute on a mail object (mailbox, mail user, distribution group) and then reset it back to its original value in order to have the object fall into scope of the appropriate Address Lists.


Try to stay with me through the rest of this ridiculousness, I promise not to mention a certain furry red Sesame Street character…

Time to “Tickle”

Important to note is that in an Exchange Online environment that is using Directory Synchronization, nearly all the attributes are authored on-premises and synchronized to the cloud.

So to “tickle” a mailbox would mean doing the following:

  • Finding an attribute that could be changed (e.g. an extension attribute)
  • Change the attribute for all mail objects
  • Initiate a directory sync
  • Change the attribute back for all mail objects
  • Initiate a directory sync

After all this, your Address List would now show the proper members.

Microsoft eventually released a KB article (KB2955640) that describes the above process (minus any reference of “tickling”).

A Better Way…

I’m not a fan of using attributes in ways they weren’t designed or implementing “hacks” that are subject to change with future functionality but this situation had me wonder if there was a way to at least shorten this ugly process.

While most attributes are authored from your on-premises Active Directory, there are a few that can be written directly in the cloud. If we “tickled” the mailbox with one of these attributes, it would remove the directory sync requirement.

Of the list of attributes that can be written directly in the cloud, I wanted to make sure it would be relatively non-impactful if something went wrong. It’s probably not a good idea to play with any of the litigation hold attributes as it would be difficult to explain all this “tickling” as part of conversations with your corporate legal.

The value I settled on was “SimpleDisplayName”. This attribute exists on mailboxes, mail users and distribution groups; in most cases this attribute will have a null value. It also seems to have an interesting behavior in that just setting it to its original value still seems to trigger an update.

So in the interest of continuing this “tickling” silliness, I have put together a quick “Tickle-MailRecipients” script. Running this script in Exchange Online will take the existing “SimpleDisplayName” value for all mailboxes, mail users and distribution groups and write it back to the object, thus forcing an update of any Address Lists.

More Info

I’ve skipped over the process of actually creating an Address List; if you’ve found this article, you’ve probably already figured that out. If not, checkout Tony Redmond’s article for the process on creating an Address List and be sure to note the RBAC requirement. You should also be aware of the limitations around Address Lists in Exchange Online.

Script

The script for this post can be found in the Microsoft Script Center at the following link: Tickle-MailRecipients.ps1

Summary

  • Address Lists can be a useful way to provide additional filtered views of the GAL.
  • In Exchange Online, Address Lists have the unexpected behavior of not populating at creation.
  • Lack of an “Update-AddressList” cmdlet means objects need to be “tickled”.
  • The “SimpleDisplayName” attribute is not synchronized from on-premises AD and is authored in the cloud.
  • A form of the word “tickle” has been used 12 times in this article. …well, now 13.

 
Did you find this article helpful?

Leave a comment below or follow me on Twitter (@JoePalarchio) for additional posts and information on Office 365.


Office 365 – The Limitations of Alternate Login ID

$
0
0

Back in April of 2014, Microsoft announced a feature called “Alternate Login ID” (sometimes referred to as “Alternative Login ID”). The idea was that instead of changing the UPNs in your on-premises Active Directory, you could use a different value to authenticate to Office 365 and sync that value to the cloud as your login.

At the time of release, I wrote an article (“Office 365 – Configuring AD FS & DirSync with an Alternate Login“) that covered the necessary configuration to use Alternate Login ID. It seemed like a very viable option for organizations that had dependencies on their current UPNs and would not be able to easily change their UPNs. In the past 10 months, that article has been one of the more popular articles that I’ve written so I wanted to follow it up with an update based on information that we now know today.

The Previous 10 Months…

While Alternate Login has been touted by some, even at Microsoft, as the magical answer to your UPN woes, I’ve been hesitant to recommend it. In my opinion, this feature is for when you absolutely cannot change your UPNs, not when an organization “doesn’t want to” or hasn’t taken the time to investigate dependencies on the current UPNs. We’re all familiar with the phrase “bleeding edge” and even though the feature is almost a year old, there are still some limitations being discovered. However, for some organizations, it is the only solution which is fine as long as you understand the footnotes that come with it.

What We Know Today

When the feature was first released, there was a bit of a vague reference to incompatibilities with Intune and to “contact your Account representative for more information”. Eventually there were some concerns that came up regarding Exchange hybrid environments, I first saw some chatter about this on Yammer and then in an article by Steve Goodman.

Fast forward to February 2015 and Microsoft has now added the following text to the wiki page for Alternate Login ID:

This update was made on February 17th, the previous version of the article just gave a warning about Autodiscover in Exchange hybrid under the “may impact various other Azure AD and Office 365 scenarios” section. The same information was added at some point to the TechNet page for this feature: Configuring Alternate Login ID.

The language seems a bit stronger now saying that the feature is not compatible.

Issues We’re Aware Of

Below are a list of items that we know have issues with implementing Alternate Login ID. That’s not to say that you shouldn’t use it if there are not alternatives, but it really should be the last resort and you should be ready to communicate these issues to your end users.
Intune
I don’t have much background on this one other than it’s been there since the original feature release. The notes have always said: “If you are an Intune customer using the SCCM Connector, there may be additional configuration required”. That tells me there’s some kind of issue but perhaps someone more involved with Intune can help fill in the details.

Exchange Hybrid Autodiscover: Domain Joined
The primary issue here is the mismatch between credentials that are valid on-premises and credentials that are valid in the cloud. In an Exchange Hybrid environment, the Autodiscover records still point to the on-premises Exchange where a user authenticates and then performs an Autodiscover lookup. If the user has a cloud mailbox, the user is then redirected to Office 365 where another Autodiscover lookup is done, with authentication, and then the Autodiscover response is returned. The problem that occurs is that different credentials are necessary for on-premises (which doesn’t know anything about Alternate Login ID) and the cloud (which expects the Alternate Login ID).

For domain joined machines, the logged in credentials are sufficient to authenticate to the on-premises Exchange and then the user receives the usual single prompt to authenticate to Exchange Online. The only difference you’ll notice here is that the prompt for Office 365 has the wrong credentials populated in the login box and you need to enter your Alternate Login ID.

Exchange Hybrid Autodiscover: Non-Domain Joined
For non-domain joined machines, the user is presented with prompts for both on-premises and the cloud without knowing which platform the prompt is for. The result is that while it’s technically possible to navigate the login prompts, it’s unlikely that your users will know what credentials to provide during what prompt.

Where this really becomes difficult to know what account to use is when you have on-premises Public Folders that you’ve made accessible by cloud mailbox users. The proxy mailbox for the on-premises Public Folders is returned as part of the cloud Autodiscover response and at some point when opening Outlook, you’re expected to enter the on-premises credentials. I would say that this configuration is nearly unusable.

Exchange Hybrid Autodiscover: Mac
When using the new “Outlook for Mac”, the credential mismatch of Alternate Login ID will cause Outlook to fail during the automatic account setup. The user will need to manually configure Outlook to use the target of “https://outlook.office365.com/EWS/Exchange.asmx”.

Office ProPlus
The behavior here is somewhat odd. When a user is using Alternate Login ID, Office ProPlus will install and show activated under that user’s account in the cloud however in the local applications, it will show you logged in under your on-premises UPN.

The result is that you won’t see the links to your OneDrive for Business within the Office applications and the OneDrive for Business Sync Client will not be setup. While you are able to sign out of the on-premises UPN and sign in with your Alternate Login ID, I question if Office ProPlus would go into “reduced functionality mode” after a period of time if left logged in with the on-premises account.

Remote Connectivity Analyzer
Not that this is a critical issue but the Remote Connectivity Analyzer Autodiscover test does not know how to handle Alternate Login ID with Exchange Hybrid due to the double authentication prompt.

Azure Application Proxy
As noted by the commenter below, the new Azure Application Proxy has a footnote stating: “The UPNs in Azure Active Directory must be identical to the UPNs in your on-premises Active Directory in order for preauthentication to work. Make sure your Azure Active Directory is synchronized with your on-premises Active Directory.” This means Alternate Login ID is not compatible in this situation.

Third-Party Identity Providers (IDPs)
Microsoft has a program for tested third-party IDPs called “Works with Office 365 – Identity”. Part of this program is a list of tested providers along with any exceptions that might be known with those products. Listed in the notes for this program is that “Use of Sign-in by Alternate ID to UPN is also not tested in this program”. So basically your mileage may vary when using Alternate Login ID with any of these third-party IDPs.


In addition to the above known issues, it would be reasonable to have concerns about future compatibility with features like the upcoming authentication change to Active Directory Authentication Library (ADAL).

Concerns with AADSync

When Alternate Login ID was released, the new AADSync did not exist yet. The configuration for DirSync, as outlined in my article, was relatively straight-forward but took some effort and investigation.

Today, we have the new AADSync tool which is replacing DirSync. This tool provides a, perhaps too easy way, to enable Alternate Login ID during installation. It’s very likely that someone installing AADSync wouldn’t necessarily know that they were enabling this feature based on how the configuration options are presented.

During installation, you are asked what you would like the “userPrincipalName” in the cloud to be matched to in your on-premises Active Directory. Should you change this value from the default to something like “mail”, you are now using Alternate Login ID from a Directory Synchronization perspective (although you still need to configure AD FS).

The “Learn more about user matching” link in the installer doesn’t provide much additional guidance, it takes you to a page that says:

The userPrincipalName attribute is the user’s login ID in Azure AD. By default the userPrincipalName attribute in ADDS is used. If this attribute is not routable or not suitable as the login ID a different attribute, such as mail, can be selected in the installation guide.


No warning, however, of any potential limitations to come…

Summary

  • Alternative Login ID allows you to use a value other than the on-premises UPN to authenticate to Office 365.
  • The feature should be used when you “can’t change UPNs”, not when you “don’t want to”.
  • There are a list of known “limitations” with using Alternative Login ID that you should be aware of should you decide to implement it.
  • AADSync provides an easy way to implement Alternate Login ID, possibly without the installer knowing they are doing so.

 
Did you find this article helpful?

Leave a comment below or follow me on Twitter (@JoePalarchio) for additional posts and information on Office 365.


Office 365 – Azure AD Sync: Did You Know?

$
0
0

brain_gears_shutterstock_wordpressIt’s been about six months since “Azure AD Sync” (often called “AADSync”) was made generally available with the intended purpose to replace the previous DirSync tool. In addition to an overhaul under the hood, AADSync brought with it new features such as support for multiple Active Directory forests.

If you’re configuring Directory Synchronization for the first time, it is recommended to use AADSync instead of DirSync. If you have an existing DirSync environment, you might find that AADSync fills some requirements that DirSync does not.

Below are 10 quick little tidbits you might not have known about Azure AD Sync.

What’s in a Name?

Aside from “Azure AD Sync / AADSync” being a tongue-twister for consultants, I’ve found that it’s not uncommon for there to be confusion about what AADSync is. While it has “Azure” in the name, it’s still a locally installed product running on a server in your environment. It’s not a cloud service, it’s an updated version of the DirSync product you’re probably familiar with. Yes, that server could technically be running in Azure IaaS but now we’re just playing word games.

Upgrading from DirSync / FIM

Running DirSync or FIM with the Office 365 MA today? There is a migration process for you although it’s basically just installing the new AADSync product and disabling the old sync product. You can technically install them on the same server but given it’s probably on a virtual server, I prefer to install side-by-side on another virtual machine. If you’re feeling real cautious, create a new service account in the tenant and disable the old one at the time of cutover. Microsoft has a little guidance on the migration process: Moving from DirSync or FIM to Azure Active Directory Sync

Forcing a Synchronization

If you’ve been running DirSync for any length of time, your fingers are well trained at typing the command “Start-OnlineCoexistenceSync“. In some odd decision that seems to be a step backwards, you force a sync in AADSync using a command-line utility and not PowerShell. Yes, a command-line utility.

To force a sync, navigate to “C:\Program Files\Microsoft Azure AD Sync\Bin” and run:

DirectorySyncClientCmd.exe delta” for a delta sync and…
DirectorySyncClientCmd.exe initial” for a full sync


Not sure of the logic here, hopefully this is changed at some point and this is moved back into PowerShell.

Undocumented PowerShell Module

Despite the requirement to use the command-line to force a sync, there is in fact a PowerShell module for AADSync; the name of the module is “ADSync” (yes, one “A”). There appears to be 61 commands in the module, unfortunately there is almost no documentation on the syntax. You can gain insight into the syntax for some of the commands by exporting out your sync rules when configuring filtering.

Forcing a Password Sync

Like DirSync, the Password Sync process happens out-of-band from the general sync process. While the article “How to Use PowerShell to Trigger a Full Password Sync in Azure AD Sync” sounds encouraging, you’re currently presented with these detailed instructions:

You can sync password by using the PowerShell module and these instructions: How to Use PowerShell to Trigger a Full Password Sync in Azure AD Sync

Sync Rules Editor

Hidden in “C:\Program Files\Microsoft Azure AD Sync\UIShell” is “SyncRulesEditor.exe” which allows you to customize the synchronization rules. The interface is a bit “Resource Kit like” but it’s very powerful and mandatory in any type of complex multi-forest environment.

When to Use Full SQL

With DirSync, the guidance was always to use SQL when you had more than 50,000 objects in your Active Directory. With AADSync, this number is now 100,000 objects although it’s an estimate and the true limitation is the 10 GB database size limit with the embedded SQL Server Express. SQL Server 2008 to SQL Server 2014 is supported if you exceed the object limit.

Skipping the Initial Sync

Almost never do I select the option to kick off a sync during the initial configuration. I usually want to work on creating some filters and such to test out the process before I’m creating thousands and thousands of objects. If you skip the initial sync, you should be aware that the scheduled sync process (running as a task in the Windows Task Scheduler) will be disabled. So if you want the 3 hour scheduled sync to occur, you’ll need to go enable the task called “Azure AD Sync Scheduler”.

Service Account Permissions

If you install AADSync with the intention of using “Password Sync”, “Password Writeback” or “Exchange Hybrid”, you should be aware that the necessary permissions are not assigned in Active Directory. Those permissions are called out in the installation instructions: Install the AADSync Service.

Azure Active Directory Connect

…and after all this, Microsoft has a new tool coming for Directory Synchronization. I see it as more of a wizard of sorts but the idea is to make installing AADSync and AD FS easier for organizations to deploy. The plan appears for the new tool, “Azure AD Connect“, to actually replace AADSync although I suspect AADSync is just bundled in the install. I’m not real excited about this product just yet, what we have today seems to work. Trying to use a wizard-based application to remotely install AD FS on servers via WinRM (including machines in a DMZ) seems like we’re trying to make it too simplified and ultimately less flexible. I envision spending more time troubleshooting WinRM and firewall rules than it would normally take me to deploy an AD FS farm. Time will tell, this product is currently in preview with release expected later this year.
 
Did you find this article helpful?

Leave a comment below or follow me on Twitter (@JoePalarchio) for additional posts and information on Office 365.

Looking to do some more reading on Office 365?

Catch up on my past articles here: Joe Palarchio.


Office 365 – Microsoft’s “Cloud-First” Strategy In Action

$
0
0

For the past year, we’ve heard Satya Nadella’s “cloud-first, mobile-first” vision from Microsoft. Some joke that they both can’t be “first” but let’s just call it priority “1A” and “1B”.

I see it every day in Office 365. Exchange Online has nearly a bi-weekly addition of features while the on-premises version lags behind. It makes sense too that at some point, Microsoft will have to decide that “feature X” will go into the next version of Exchange as there needs to be some incentive to purchase the next version. Meanwhile, the “evergreen” service of Exchange Online continues to receive updates.

In the past 24 hours, two examples popped up demonstrating this priority.

Example #1

The first was in regards to the Exchange Online feature called “Clutter”. Given the machine learning dependencies, this feature only exists in Exchange Online today and likely will not make it into the on-premises version of Exchange.

On Monday evening, a conversation popped up in the “Office 365 Network” on Yammer with essentially some complaints about Microsoft sending communications to Exchange Online users about Clutter. Within 24 hours, a Program Manager from Microsoft was responding to the questions and dialog continued, explaining some of the rational behind the behavior. A couple hours later, a feature announcement was released describing new admin functionality for Clutter: “Making Clutter in Office 365 even better“.

Now maybe the timing was just right as Microsoft obviously had been planning the admin features and it was even a roadmap item. Regardless, the access to the Office 365 team via Yammer and their prompt response is unprecedented in my opinion, nothing I’ve seen from any on-premises products. When you watch the Yammer conversations, you really get the sense that Microsoft is listening. If your organization uses Office 365, you should definitely be hooked into the Office 365 Network on Yammer.

Example #2

On the same day, the Exchange Team published a blog post (“Want more control over Sent Items when using shared mailboxes?“) about new functionality for shared mailboxes and sent items. It’s a pretty commonly requested feature that existed in Exchange 2010 and disappeared in Exchange 2013.

The release date for this functionality in Office 365 was stated as “now” or “very soon”. For on-premises Exchange 2013, it will come as part of CU9.

Microsoft has a release cadence of approximately 3-4 cumulative updates (CUs) per year. The current release of Exchange 2013 is CU7 with CU8 probably arriving in the next month or two which puts CU9 probably 6 months or more away. Then you have the usual delays before on-premises customers test and deploy the latest cumulative update (since we’ve all been burned before by being early adopters) and realistically most organizations aren’t running CU9 for probably 7-8 months.

So that’s your delta right now, about 7-8 months and by that point, we’ll have moved on and started talking about the next version of Exchange.

Summary

There are examples of Microsoft’s “cloud-first” strategy everywhere, look no further than the Office 365 Roadmap for great examples of what’s to come. While these two examples may seem somewhat minor compared to some of the blockbuster features available in the cloud, they demonstrate the agility of the cloud service and why migrating to Exchange Online will be your last mail migration.
 
Did you find this article helpful?

Leave a comment below or follow me on Twitter (@JoePalarchio) for additional posts and information on Office 365.

Looking to do some more reading on Office 365?

Catch up on my past articles here: Joe Palarchio.


Office 365 – The Magic Behind The Hybrid Config Wizard (2010)

$
0
0

Configuring Exchange hybrid prior to the Hybrid Configuration Wizard (HCW) is just a distant memory at this point. The process that was a painfully long configuration was greatly simplified with the release of the HCW with SP2 for Exchange 2010 back in May 2011.

As much as the HCW has made my job easier, I’m always a bit hesitant about black box processes. Since an early age, I’ve always been one that needed to know how things work under the hood.

So what does the wizard do?

What does it change?

What is the impact?

If you submitted a change control request stating that you’re going to “run the hybrid wizard”, you’re probably being asked these same questions.

For those that are implementing Exchange hybrid on a regular basis, what the wizard does should not be a mystery at this point. If you’re new to Exchange hybrid, I’ve outlined below the individual commands run by the wizard and areas where there might be potential risk.

My Process

I gathered this data by running the HCW on an Exchange server using the “-verbose” switch. I’ve excluded anything that was just a “Get-” command and pulled out only the commands where a change is being made. When you run the HCW, you’ll find the log file in “C:\Program Files\Microsoft\Exchange Server\V14\Logging\Update-HybridConfiguration\“.

This was done on an Exchange 2010 SP3 UR8 server, it’s possible that the HCW changes with updates and it has slightly changed over the years.

Six Stages

There essentially are six stages of the Exchange 2010 HCW:
  • Check Prerequisites
  • Configure Legacy Exchange Support
  • Configure Recipient Settings
  • Creating Organization Relationships
  • Configuring Organization Relationship Settings
  • Configure Mail Flow
Within each section, there are commands run in the tenant or on-premises, I’ve outlined those in the sections below.

Stage 1: Check Prerequisites

Nothing is actually changed in this stage. As the name implies, it’s a prerequisite check where you’ll see a lot of “Get-” commands in the log but no actual changes.

Stage 2: Configure Legacy Exchange Support

This stage is executed if you have Public Folders in your environment.

The command below is executed in the on-premises environment to create a folder in the Public Folder hierarchy called “OU=EXTERNAL (FYDIBOHF25SPDLT)”. This folder is used for sharing of free/busy information cross-premises when you have Exchange 2003 in the environment.

Install-FreeBusyFolder


Stage 3: Configure Recipient Settings

All of the commands in this stage are run in the on-premises environment.

First, the “coexistence domain” (tenant.mail.onmicrosoft.com) is setup as a remote domain and an accepted domain in the on-premises environment.

New-RemoteDomain -Name 'Hybrid Domain - tenant.mail.onmicrosoft.com' -DomainName 'tenant.mail.onmicrosoft.com'
Set-RemoteDomain -Identity 'Hybrid Domain - tenant.mail.onmicrosoft.com' -TargetDeliveryDomain 'True'
New-AcceptedDomain -DomainName 'tenant.mail.onmicrosoft.com' -Name 'tenant.mail.onmicrosoft.com'


The coexistence domain is then added to the email addresses policies that contain the SMTP domains selected in the wizard and those email address policies are applied.

Set-EmailAddressPolicy -Identity [Recipient Policy] -EnabledEmailAddressTemplates [Proxy Addresses] -ForceUpgrade 'True'
Update-EmailAddressPolicy -Identity [Recipient Policy]


Potential Risk: If you’ve added Exchange 2010 to your environment to facilitate Exchange hybrid but your mailboxes are on a legacy version of Exchange (especially Exchange 2003), this is one to watch. Check out my post “Migrating From Exchange 2003? – Watch Those Address Policies!” for potential concerns about email addresses not compliant with your email address policies.


Stage 4: Creating Organization Relationships

In this stage, commands are run both on-premises and in the tenant in order to setup the trust with the Microsoft Federation Gateway (if you don’t have one already). Organization Relationships are also created between on-premises and the cloud to support free/busy between the two environments. These commands should have virtually no impact in your environment.

These are run on-premises:

Set-Federationtrust -RefreshMetadata -Identity 'Microsoft Federation Gateway'
Set-FederatedOrganizationIdentifier -DelegationFederationTrust 'Microsoft Federation Gateway' -AccountNamespace 'company.com' -Enabled 'True'
New-OrganizationRelationship -Name 'On Premises to Exchange Online Organization Relationship' -TargetApplicationUri 'outlook.com' -TargetAutodiscoverEpr 'https://pod51060.outlook.com/autodiscover/autodiscover.svc/WSSecurity' -Enabled 'True' -DomainNames [SMTP Domains]


These are run in the tenant:

Enable-OrganizationCustomization
Set-FederatedOrganizationIdentifier -DefaultDomain 'tenant.mail.onmicrosoft.com'
New-OrganizationRelationship -Name 'Exchange Online to on premises Organization Relationship' -TargetApplicationUri 'FYDIBOHF25SPDLT.company.com' -TargetAutodiscoverEpr 'https://autodiscover.company.com/autodiscover/autodiscover.svc/WSSecurity' -Enabled 'True' -DomainNames [SMTP Domains]


Stage 5: Configuring Organization Relationship Settings

In this stage, commands are run both on-premises and in the tenant in order to enable the MRS Proxy (for mailbox moves) and configuration of the Organization Relationship for OWA redirection and free/busy. These commands should have virtually no impact in your environment.

These are run on-premises:

Set-WebServicesVirtualDirectory -Identity 'SERVER\EWS (Default Web Site)' -MRSProxyEnabled 'True'
Set-OrganizationRelationship -MailboxMoveEnabled 'True' -FreeBusyAccessEnabled 'True' -FreeBusyAccessLevel 'LimitedDetails' -ArchiveAccessEnabled 'True' -MailTipsAccessEnabled 'True' -MailTipsAccessLevel 'All' -DeliveryReportEnabled 'True' -TargetOwaURL 'http://outlook.com/owa/tenant.onmicrosoft.com' -Identity 'On Premises to Exchange Online Organization Relationship'
Add-AvailabilityAddressSpace -ForestName 'tenant.mail.onmicrosoft.com' -AccessMethod 'InternalProxy' -UseServiceAccount 'True' -ProxyUrl 'https://mail.company.com/ews/exchange.asmx'


These are run in the tenant:

Set-OrganizationRelationship -FreeBusyAccessEnabled 'True' -FreeBusyAccessLevel 'LimitedDetails' -MailTipsAccessEnabled 'True' -MailTipsAccessLevel 'All' -DeliveryReportEnabled 'True' -Identity 'Exchange Online to on premises Organization Relationship'


Stage 6: Configure Mail Flow

This stage configures the SMTP connectors in the on-premises environment and in Exchange Online Protection (EOP) in the tenant. These commands should have virtually no impact in your environment unless you are currently using EOP Standalone in which case there could be an impact to mail routing.

The commands below are run on-premises. A send connector called “Outbound to Office 365″ is created it send messages with your coexistence domain (tenant.mail.onmicrosoft.com) to EOP using TLS. A receive connector is created that is restricted to the source IPs for EOP. The remote domain for your coexistence domain is then configured so that the appropriate out-of-office (OOF) is sent cross-premises.

New-SendConnector -Name 'Outbound to Office 365' -AddressSpaces [Coexistence Domain] -SourceTransportServers [Servers] -Fqdn 'mx1.company.com' -RequireTLS 'True' -TLSAuthLevel 'DomainValidation' -TLSDomain 'outlook.com' -ErrorPolicies 'DowngradeAuthFailures'
New-ReceiveConnector -Server 'SERVER' -Name 'Inbound from Office 365' -RequireTLS 'True' -PermissionGroups 'AnonymousUsers' -Fqdn 'mx1.company.com' -TLSDomainCapabilities 'outlook.com:AcceptOorgProtocol' -Bindings [0.0.0.0:25] -RemoteIPRanges [EOP IP Addresses] -AuthMechanism 'Tls'
New-RemoteDomain -Name 'Hybrid Domain - company.com' -DomainName 'company.com'
Set-RemoteDomain -Identity 'Hybrid Domain - company.com' -TrustedMailInbound 'True'
Set-RemoteDomain -Identity 'Hybrid Domain - tenant.mail.onmicrosoft.com' -TrustedMailOutbound 'True' -TargetDeliveryDomain 'True' -AllowedOOFType 'InternalLegacy' -AutoReplyEnabled 'True' -AutoForwardEnabled 'True' -DeliveryReportEnabled 'True' -DisplaySenderName 'True' -NDREnabled 'True' -TNEFEnabled 'True'


The commands below are run in the tenant. The remote domains in the cloud configured similar to the on-premises domains and then the hybrid mail flow is set. The “-CentralizedTransportEnabled” parameter here is dependent upon the option you selected during the wizard. When this is “True”, this means that messages from cloud users to the Internet are sent back on-premises as opposed to being sent direct from EOP to the Internet recipient.

New-RemoteDomain -Name 'Hybrid Domain - company.com' -DomainName 'company.com'
Set-RemoteDomain -Identity 'Hybrid Domain - company.com' -TrustedMailOutbound 'True' -AllowedOOFType 'InternalLegacy' -AutoReplyEnabled 'True' -AutoForwardEnabled 'True' -DeliveryReportEnabled 'True' -DisplaySenderName 'True' -NDREnabled 'True' -TNEFEnabled 'True'
New-RemoteDomain -Name 'Hybrid Domain - tenant.mail.onmicrosoft.com' -DomainName 'tenant.mail.onmicrosoft.com'
Set-RemoteDomain -Identity 'Hybrid Domain - tenant.mail.onmicrosoft.com' -TrustedMailInbound 'True'
Set-HybridMailflow -SecureMailEnabled 'True' -CentralizedTransportEnabled 'False' -OnPremisesFQDN 'mx1.company.com' -CertificateSubject 'mx1.company.com' -InboundIPs [X.X.X.X] -OutboundDomains [SMTP Domains]


What About Exchange 2013?

The HCW process in Exchange 2013 is slightly different in a couple areas. Look for a similar analysis of that process in a future post.


Did you find this article helpful?

Leave a comment below or follow me on Twitter (@JoePalarchio) for additional posts and information on Office 365.

Looking to do some more reading on Office 365?

Catch up on my past articles here: Joe Palarchio.



Office 365 – A Deeper Look at the Microsoft “Send” App

$
0
0

On Wednesday, Microsoft announced a new Office 365 mobile app called “Send“. The idea behind the app is to be able to send quick and simple messages to other users via email.

The first question that came to mind was, “What problem is this app trying to solve?” My phone can already send emails, IMs and text messages, did we really need another option?

My thoughts then shifted to “How does this work?”, “What kind of security options are there?” and other questions that clients are bound to ask.

In the interest of peeking behind the scenes, I ran the app through Fiddler to see what the traffic looked like. Some thoughts based on the results are below…

Getting The App

At the initial release, the app is only available on iOS and in the US and Canada. This will obviously change in the future although it’s a bit interesting to see how iOS seems to receive some of the first releases from Microsoft these days. Finding the app in the Apple App Store is a bit tricky, it’s listed under “Send, a Microsoft Garage Project“.

If you look for other “Microsoft Garage” apps, you’ll notice they have another interesting app called “Tossup” which looks to be for sending surveys to friends on where to go to for lunch, etc.

Logging In (and Out?)

The process to login to the app is pretty much the same as most Office 365 applications. I was able to easily login to the application via my organization’s AD FS. When I went to look at how to logout, I found out there isn’t a way. In the FAQ you’ll find that you basically need to uninstall the application to logout.

Sending a Message

Sending messages is certainly quick and simple, it’s a very similar look and feel to sending a text. If the user has the “Send” app, the message will pop up in the app, otherwise the recipient will just receive the message in their mailbox. The messages are sent via your Office 365 mailbox and will show up in your “Sent Items”. Since these messages are going out your Exchange Online environment, they’ll flow through any DLP or other filtering you’re performing on SMTP traffic.

Receiving Messages

Even when you have the “Send” app installed, the messages arrive in your mailbox in addition to appearing in the app; the messages all have “#Send” in the subject line. The duplicate alerts quickly get annoying so I made a folder called “#Send History” and setup a rule in Outlook to move messages there based on that subject.

The “#Send” subject appears to be important to the app and what causes messages to pop up in the application. I was able to compose a new message with that subject line and it popped up in the recipient’s app.

The Network Trace

I configured my iPhone to run through Fiddler with SSL decryption and setup the app.

The authentication appears to use OAuth and then the rest of the app communication is connecting via an API as opposed to directly using Exchange Web Services (EWS) or ActiveSync. The API communication is all to the host “flow-prod-api.outlookapps.com” and does not appear to be the APIs that I’ve seen published. That said, I’m by no means a developer and will probably need to have some other eyes take a look at the requests.

The “flow” name in the above hostname seems to indicate this is “Microsoft Flow” app that had information leaked back in May.

Securing Access

While the Microsoft approach seems to be allowing users to access their email from any device and any location, I have some clients that take a significantly more restrictive stance. Certainly we will be asked by clients to block access to this application and the method in which that will be done is still TBD.

Update: Exchange Server MVP Paul Cunningham found that the host application is connecting to Exchange Online via EWS and it can be blocked by using the “MicrosoftSend/*” string. Apparently when you block the app, it makes Microsoft sad.

So Do We Need This?

In the short time the app has been out, it’s amazing that people seem to be on one extreme or another with it. Some of my clients and coworkers love it right out of the gate, others think it’s an overlap of multiple existing technologies and there is no need for it.

I can see certain situations where the app could be useful. It’s definitely a bit beta but I imagine that’s to be expected out of the “Microsoft Garage”. A logout option would be nice and it doesn’t seem like you can add additional people to a group conversation that you have going.

More Info to Come

The above is all pretty early observations, more info is surely to come. Microsoft has setup a group in Yammer for the application and there is a “YamJam” scheduled on July 28th at 9:00 AM PST.

Did you find this article helpful?

Leave a comment below or follow me on Twitter (@JoePalarchio) for additional posts and information on Office 365.

Looking to do some more reading on Office 365?

Catch up on my past articles here: Joe Palarchio.


Office 365 – A Deeper Look at the Microsoft “Send” App was first posted on July 22, 2015 at 10:30 pm.

Office 365 – Common Confusion with Email Retention Policies

$
0
0

A topic that seems to be surrounded with much confusion in Exchange Online is the concept of “Retention Policies”. While the feature itself is not new to Exchange, for many organizations it seems that establishing their first email retention strategy is coupled with their migration to the cloud.

Even for organizations that have a well established email retention strategy, the move to the cloud changes many of the factors that may have contributed to the policy and it’s worth reevaluating.

Below are some of the commonly misunderstood functions of Retention Policies and some of the pitfalls I’ve seen in unsuccessful attempts to establish an email retention strategy.


What Retention Policies Are

Perhaps a result of the name itself, there often seems to be confusion about what retention policies even are. Part of the confusion is that a legal definition of “retention policy” probably doesn’t exactly equate to the functionality of the Exchange feature. If a client previously had a third-party system in place for “email retention”, it can add to the confusion.

The most simple definition that I provide to clients is: Retention Policies define the maximum amount of time that an email is kept but with no guarantee that it will be kept that long.” You can see how this definition might differ from other types of retention policies or strategies in an organization. If you’re developing an “employee retention strategy”, the goal of that strategy is not to create a timeline for when you’re getting rid of your employees.

A more detailed explanation of Retention Policies would include that they are comprised of “Retention Tags” and tags can have different types actions and functionality. For more information, TechNet has a pretty good article on the topic: Retention Tags and Retention Policies.

What Retention Policies Are Not

Working with the above “simple definition”, we now know there is no guarantee that an email will be kept the length of time specified in the Retention Policy. This is evident when you look at the tags in the Retention Policy, you’ll see an action like “Delete After 7 Years”. So while the email will be deleted after 7 years by the system, it could also be deleted by the user after 7 days.

So Retention Policies really don’t actually “retain” anything, instead they actually remove data. If you’re looking to keep emails for a minimum period of time, regardless of user action, the feature you want is either “Litigation Hold” or “In-Place Hold”. If your corporate policy is to keep emails for 7 years (no more, no less), then a combination of Retention Policies with Litigation Hold or In-Place Hold can help you achieve this.

So How About “Retention Hold”?

The feature “Retention Hold” has a name made of two words that might make you think you’re keeping emails. While it’s sort of true, it might not be how you expect.

Basically the Retention Hold feature is designed to put your Retention Policy on “pause” for a mailbox. So if the user is gone for an extended period of time, your Retention Policy isn’t going in and clearing out emails before they were even seen. Again, it doesn’t stop a user from deleting emails because Retention Policies don’t actually retain emails.

Key Concepts To Know About Retention Policies

  • Retention Policies do not prohibit a user from removing the email message from his/her mailbox.
  • Every mailbox in Exchange Online is assigned a Retention Policy.
  • The Default Retention Policy in Exchange Online includes a tag that will move emails to the archive mailbox (if enabled) after two years.
  • When a Retention Policy is applied to a mailbox, it also applies to the online archive mailbox (if it exists).
  • Retention Policies are processed by a scheduled task that runs every 7 days. This means emails could be kept up to 7 days past the expiration period.
  • If a mailbox is less than 10 MB, it is not processed by the scheduled task and thus the Retention Policy does not apply unless you manually run the task (KB2627729).

Common Pitfalls

Armed with the above knowledge, you’ll avoid much of the confusion around Retention Policies. That said, there are a few more areas worthy of discussion.

The Corporate Retention Policy You Can’t Implement
The most common issue I see is when a corporate retention policy is handed down by a legal department with no input on the technical capabilities of Exchange. A policy will be written and approved that says something like “emails cannot be kept in the Inbox” or “email cannot be kept on the system” for period of time. Then we dive into lengthy discussions around what exactly is the “Inbox” or “system”. Is it the folder called “Inbox” within a mailbox or are we talking about the entire mailbox itself. If it’s just the Inbox folder, what are we really accomplishing from a legal standpoint if a user can keep the email somewhere else within the same mailbox? In short, make sure your messaging administrators have some input into your corporate retention policy.

“Because We’ve Always Done It That Way…”
The next mistake is trying to carryover existing procedures to the cloud without reevaluating them. Some pretty important aspects change when you move to the cloud, top on that list is that you’re really not paying for storage anymore. Okay, you’re paying for it but your Office 365 mailbox costs are the same whether your mailbox is 50 MB or 50 GB. In the on-premises world, storage is relatively expensive so in some instances a corporate retention policy started with disk space in mind and not necessary legal. So while there is something to be said for maintaining a “tidy” mailbox, you need to be reasonable or your users will engineer their own solutions. Any time I work with a company that has an aggressive retention policy or terribly small mailbox quotas, I also find that they have GBs if not TBs of PSTs scattered across their network.

Bundled with the above, some organizations previously tried to keep the primary mailbox size small so that the OST created locally by Outlook was manageable. So they deleted emails after X number of days or moved them into the online archive mailbox which was not cached. Starting with Outlook 2013, we no longer cache the entire mailbox which should eliminate the need for this practice. While you’re at it, consider whether you even need to use the online archive anymore: “Is the Archive Mailbox Still Relevant?

Summary

  • Understand what Retention Policies are and aren’t
  • Retention Policies on their own won’t stop a user from deleting an email
  • Use “Litigation Hold” or “In-Place Hold” in combination with Retention Policies if necessary
  • Develop a corporate retention policy that makes sense from a legal and technical standpoint
  • When moving to the cloud, take the time to reevaluate the intent around your corporate retention policy

Did you find this article helpful?

Leave a comment below or follow me on Twitter (@JoePalarchio) for additional posts and information on Office 365.

Looking to do some more reading on Office 365?

Catch up on my past articles here: Joe Palarchio.



Office 365 – Common Confusion with Email Retention Policies was first posted on August 11, 2015 at 10:00 am.

Office 365 – Efficiently Connecting to Office 365 Via PowerShell

$
0
0

If you’re an administrator for Office 365, you’re likely very familiar with the fact that while some tasks can be performed in the portal, many need to be done via PowerShell. If you’ve managed to get this far in your IT life without using PowerShell, Office 365 is going to force you to learn it.

Even those that are savvy with PowerShell at times still do things in what I would consider a less than efficient manner. I’ve watched countless admins paste commands into the PowerShell window in order to connect to Office 365. They open up their OneNote or a Notepad file on the desktop every time they want to connect to Exchange Online and paste in the string of commands.

Below is an easier and more efficient way…

The first thing to note is that when connecting to Office 365 via PowerShell, you’re connecting to each workload individually. So Azure AD, Exchange Online, Skype for Business Online and SharePoint Online all have different commands used to connect to them. You can connect to all of them or you can connect to an individual workload.

What I like to do is add functions to my PowerShell profile for connecting to the workloads. I create a function for each workload and then one to load them all; I do, however, connect to Azure AD with each workload.

Prerequisites

First you will need to download and install each of the following and then reboot:

  • PowerShell 3.0 or higher (link)
  • Microsoft Online Services Sign-in Assistant (link)
  • Azure Active Directory Module for Windows PowerShell (link)
  • Skype for Business Online Windows PowerShell Module (link)
  • SharePoint Online Management Shell (link)

Creating The Functions

Launch a PowerShell console as an admin and enter the following:

notepad $profile

Now paste the following into the Notepad window and save:

function Connect-AzureAD
{
  if(-not(Get-Module -name MSOnline)) {Import-Module MSOnline}

  Write-Host "Connecting to Azure AD..."

  $global:Cred = $host.ui.PromptForCredential("Office 365 Admin Credentials", "Please Enter Your Office 365 Admin Account & Password","","")

  Connect-MsolService -Credential $global:Cred

  $host.ui.RawUI.WindowTitle = "Connected to Office 365 as: " + $cred.username

  Write-Host ""
}

function Connect-ExchangeOnline
{
  if(-not($Cred)) {Connect-AzureAD}

  Write-Host "Connecting to Exchange Online..."

  $global:SessionEXO = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $global:Cred -Authentication Basic -AllowRedirection
   
  Import-PSSession $global:SessionEXO | Out-Null

  Write-Host ""
}

function Connect-SkypeOnline
{
  if(-not($Cred)) {Connect-AzureAD}

  Write-Host "Connecting to Skype for Business Online..."

  if(-not(Get-Module -name LyncOnlineConnector)) {Import-Module LyncOnlineConnector}

  $global:SessionSFB = New-CsOnlineSession -Credential $global:Cred

  Import-PSSession $global:SessionSFB | Out-Null

  Write-Host ""
}

function Connect-SharePointOnline
{
  if(-not($Cred)) {Connect-AzureAD}

  Write-Host "Connecting to SharePoint Online..."

  if(-not(Get-Module -name Microsoft.Online.Sharepoint.PowerShell)) {Import-Module Microsoft.Online.Sharepoint.PowerShell}

  if ($cred.username -like "*.onmicrosoft.com") {
    $Tenant = ($cred.username.Substring($cred.username.IndexOf("@") + 1)).Replace(".onmicrosoft.com","")
  }
  else {
    $Tenant = Read-Host -Prompt 'Enter the Tenant Name (i.e. Enter "contoso" for "contoso.onmicrosoft.com")'
  }

  Connect-SPOService -url https://$Tenant-admin.sharepoint.com -Credential $global:Cred

  Write-Host ""
}

function Connect-O365
{
  Connect-AzureAD
  Connect-ExchangeOnline
  Connect-SkypeOnline
  Connect-SharePointOnline
}

Using The Functions

Now when you launch PowerShell, you can run any of the following functions:

Connect-AzureAD
Connect-ExchangeOnline
Connect-SkypeOnline
Connect-SharePointOnline
Connect-O365

The “Connect-O365” function will connect to all workloads whereas the others will connect to an individual workload plus Azure AD.

So there you go, no more copy and paste. It’ll take you about 10 minutes to setup and then you’re probably saving a minute for each of the thousands of times you connect in the future.

What Else?

If you’re looking for more PowerShell tips and tricks related to Office 365, make sure you check out the site that Microsoft recently released: http://powershell.office.com/


Did you find this article helpful?

Leave a comment below or follow me on Twitter (@JoePalarchio) for additional posts and information on Office 365.

Looking to do some more reading on Office 365?

Catch up on my past articles here: Joe Palarchio.



Office 365 – Efficiently Connecting to Office 365 Via PowerShell was first posted on August 24, 2015 at 10:00 am.

Office 365 – Using Office ProPlus? Take Caution Upgrading To 2016

$
0
0

Office ProPlus has done a great job of getting many organizations in a position where they’re running a fully patched and current version of Microsoft Office. It’s a component of Office 365 that really brings great value to organizations that previously didn’t have a solid deployment or patching process for Office.

Quick Aside: If you’re still running Office 2010, mainstream support is up in October

While the current version of ProPlus is essentially Office 2013, there will come a time when Office ProPlus upgrades to Office 2016.

In the article below I’ll outline some of the reasons you’ll want to take some caution with this upgrade.

This week, Microsoft posted the following announcement in the Office 365 Message Center:

Included in the announcement is this article outlining some of what is to come in the pending upgrade: Prepare to update Office 365 ProPlus to the Office 2016 version

The Good: Update Branches

It appears there will be “update branches” for Office 2016 allowing additional control of the patching process as well as an option to continue with Office 2013 for a period of time.

The Good: Familiar User Interface

The user interface in Office 2016 isn’t drastically different than Office 2013. Certainly there are new features to be found including the often requested “dark theme” but for the most part the look and feel is the same. It’s not like when Office 2007 added the “ribbon” which was completely foreign to those living in Office 2003.

Watch For: Incompatibilities with Project / Visio

Running MSI installations of Office products such as Project and Visio is not compatible with the “click-to-run” Office ProPlus (see “Office 365 – Office ProPlus C2R Not Compatible With MSI Installs“).

In the recent Microsoft article, it contains the following note:

“…if there is a 2013 version of Visio Pro for Office 365 or Project Pro for Office 365 installed on the computer when you update Office 365 ProPlus to the Office 2016 version, those versions of Visio and Project are removed from the computer. You won’t be able to reinstall them after the Office 365 ProPlus installation finishes. However, you can install the 2016 versions of Visio Pro for Office 365 and Project Pro for Office 365 on the same computer with the Office 2016 version of Office 365 ProPlus.”

 
As you can imagine, losing their Project or Visio installation could create some unhappy users if you don’t prepare for this change.

Update: As pointed out in the comments below, this incompatibility between MSI and C2R installations appears to be limited to products of the same version (2013 / 2016). It appears that running the MSI installation of Visio 2013 and Project 2013 may be supported with Office 2016 C2R. The above quote about removal of Visio and Project is referencing the 2013 C2R versions of those products, not the MSI-installed versions.

Watch For: Add-In Incompatibilities

I trust that the upgrade from Office 2013 to Office 2016 will work just fine. An area that I have concern with is with Office Add-Ins or applications that are poorly written. Unfortunately, some applications don’t plan well for the future. So for applications that have been written to look in the registry or file structure for “15” (Office 2013), they may not know what to do with “16” (Office 2016).

Even Microsoft is guilty of this with their “Mail Protection Reports for Office 365” spreadsheet. Trying to install the add-in on Office 2016 results in the following failure as it can’t find Excel 2013.

Watch For: Current Update Process

If you’ve installed Office ProPlus using the default option of updating direct from the Internet, there will be a couple things to consider. Downloading the updates to every workstation individually could be a pretty good hit to your network at 850 MB / user. Additionally, it appears that users downloading updates from the Internet will be prompted themselves to decide if they want to upgrade to 2016.

Summary

Despite the above, we shouldn’t fear the change to Office 2016; Microsoft has continuously added features within the Office 365 service that add more and more flexibility or customization. Most important will be for organizations to prepare and test add-ins before making the leap to 2016.


Did you find this article helpful?

Leave a comment below or follow me on Twitter (@JoePalarchio) for additional posts and information on Office 365.

Looking to do some more reading on Office 365?

Catch up on my past articles here: Joe Palarchio.



Office 365 – Using Office ProPlus? Take Caution Upgrading To 2016 was first posted on August 27, 2015 at 9:00 am.

Office 365 – Disabling MAPI Includes Unexpected Results

$
0
0

Just a quick FYI in this post…

Exchange Online allows for a fair amount of customization however there are still a few items here and there that can be done in on-premises Exchange but not in the cloud.

Recently, I’ve had a couple clients interested in blocking their users from using Outlook or a specific version of Outlook. In on-premises Exchange, the “Set-CASMailbox” cmdlet has a parameter called “MAPIBlockOutlookVersions” that can be used to achieve this; unfortunately, Exchange Online does not have this parameter.

The next thought was that the “MAPIEnabled” parameter could be used to block Outlook; this setting is actually what is set on users with an Office 365 “Kiosk” license which does not allow for connectivity via Outlook.

While “MAPIEnabled” does in fact block Outlook, it also causes some unexpected changes to Autodiscover…

Disabling MAPI, in both on-premises and the cloud, changes the Autodiscover response for the mailbox. While Autodiscover will still complete successfully with MAPI disabled, you’ll notice that the EWS URL for the mailbox is not returned in the XML response.

As a result, applications trying to use Autodiscover and EWS may fail on mailboxes with MAPI disabled unless the EWS URL is somehow hard-coded in the application. It would not be uncommon for an application to try and use EWS via Autodiscover, applications such as Cisco Unity Connection and BlackBerry Business Cloud Services (BBCS) both do this.

You can confirm the missing EWS URL via the Microsoft Remote Connectivity Analyzer. When running the Exchange Web Services test, you’ll receive the following response:

No EXPR or EXCH settings were found in the Autodiscover response.

 
Just an FYI should you decide that disabling MAPI is a setting you choose to implement.

Did you find this article helpful?

Leave a comment below or follow me on Twitter (@JoePalarchio) for additional posts and information on Office 365.

Looking to do some more reading on Office 365?

Catch up on my past articles here: Joe Palarchio.


Office 365 – Disabling MAPI Includes Unexpected Results was first posted on August 31, 2015 at 10:00 am.
Viewing all 67 articles
Browse latest View live