When performing a database *over in Exchange 2010, especially a planned one, it is suppose to be as seamless as possible to the end user. An Outlook user for example, will receive a small pop up informing them that the connection to Exchange has been lost, and their Outlook may hang for a couple of seconds before reconnecting and resuming normal behavior.
I recently ran into an issue where this was not the case. Users would call the helpdesk as soon as a database failover was initiated with complaints that their outlook was prompting them for a login:
Well, needless to say this is not expected behavior. After a little troubleshooting that involved a packet capture, it seemed that the Outlook clients were making an HTTPS call to the CAS servers at that moment. Turns out it was an attempt to connect to them over Outlook Anywhere, and this was the reason of the login prompt. When I checked the Outlook client, they in fact had the Outlook Anywhere Settings enabled. This was due to Autodiscovery. To check the settings in Outlook 2007 navigate to Tools->Account Settings->Change->More Settings->Connection If yours is enabled, it will look like the following:
Under Exchange Proxy Settings, you’ll find the settings enabled:
Since these were internal clients, and had no need to use Outlook Anywhere, simple unselect the Connect to Microsoft Exchange using HTTP:
This will disable the Outlook Client from connecting. The only issue is, if you use automatic profile generation through Group Policy, this leverages autodiscovery, so it will continue to put the setting back. You can do one of two things. The first is to delete the Outlook Anywhere provider using the Remove-OutlookProvider command, which is NOT recommended. This will stop Autodiscovery from publishing Outlook Anywhere GLOBALLY.
The second is to use Group Policy. Create a blank GPO named something like Disable Outlook Anywhere Settings. Download the Outlook Anywhere ADM template from here, and import it into the template under User Settings. You’ll now have the Outlook Anywhere (RPC/HTTP) options available in Group Policy:
The only value you need to edit here is the RPC/HTTP Connection Flags setting:
Edit the setting, set it to Enabled and No Flags
This will disable the Connect to Microsoft Exchange Using HTTP in the outlook clients after its been applied, notice how its greyed out:
Once this GPO has applied to all your users, you should now be able to failover databases without the users receiving a log in prompt.