400 Bad Request Error attempting to Change Password via OWA

Issue: When users attempt to change their password via OWA they are redirected to “https://exchange/owa/lang.owa” and then receive an http “400 Bad Request”
OWA_Set_Language_and_Time_Zone
After clicking “ok” user received “Bad Request” in the browser:

http 400 bad request owa

https://exchange/owa/lang.owa

Cause:
Users experiencing the issue are showing blank Time Zone and Language settings:

get-mailboxregionalconfiguration -identity MAILBOXNAME |fl

get-mailboxregionalconfiguration -identity MAILBOXNAME |fl

You query the same settings for users that do not have the change password issue and determine their Time Zone and Language settings are populated:

Settings from working user: get-mailboxregionalconfiguration -identity MAILBOXNAME |fl

Settings from working user: get-mailboxregionalconfiguration -identity MAILBOXNAME |fl

Resolution:
1) It’s possible the default Time Zone and Language settings are not set on the CAS server.  New users inherit the defaults and in theory if users do not have settings in place these will be used according to Exchange Time Zone / Language inheritance:
Set-OwaVirtualDirectory -identity “Owa (Default Web Site)” -LogonAndErrorLanguage 1033
Set-OwaVirtualDirectory -identity “Owa (Default Web Site)” -DefaultClientLanguage 1033

2) The above commands was a step in the right direction, but did not resolve my issue for users with blank settings.  Additional fix for users w/ blank language or time zone settings:
Test the fix on just one user (corrects the time zone and language for a single user):
Set-MailboxRegionalConfiguration -Identity test10 -Language en-us -TimeZone “Pacific Standard Time”

Re-check the settings of the test10 account after applying the Time Zone and Language:

display settings after fixing mailbox: get-mailboxregionalconfiguration -identity MAILBOXNAME fl

settings after fixing mailbox – get-mailboxregionalconfiguration -identity MAILBOXNAME fl

Next test to see if users password can be changed through Outlook Web Access, in our case it was working for our test user:
OWA_Change_Password_Options_Screen

Apply ‘the fix’ to all users (cycles through all mailboxes, and sets the Time Zone and Language):
Get-Mailbox -ResultSize unlimited -Filter {RecipientTypeDetails -eq ‘UserMailbox’} | Set-MailboxRegionalConfiguration -TimeZone “Pacific Standard Time” -Language en-us

Resources:
Microsoft Language Codes list:
https://technet.microsoft.com/en-us/library/aa997435(v=exchg.141).aspx

Related

3 thoughts on “400 Bad Request Error attempting to Change Password via OWA

  1. Chris Harris Post author

    Hi Brian, I would first focus on getting the query/filter to work and output results in EMC, and then go for the complete command. Try just:
    Get-Mailbox -ResultSize unlimited -Filter {RecipientTypeDetails -eq ‘UserMailbox’}

    Sometimes copy and paste messes up the single quote so you may want to hand-type the ‘usermailbox’ part

    Reply
  2. Brian the IT guy

    Great – I can fix a user by typing in the ID but the global “fix everyone” doesn’t work I get a unable to bind filter error

    Reply
  3. Techguy615

    Great information. Had this same sort of issue where a user was unable to set out of office rules from OWA and this fixed it. Sure enough, the user didn’t have a time zone or Language attributes.

    Thanks. This saved a lot of work and frustration.

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.