Notice: This website is an unofficial Microsoft Knowledge Base (hereinafter KB) archive and is intended to provide a reliable access to deleted content from Microsoft KB. All KB articles are owned by Microsoft Corporation. Read full disclaimer for more details.

You cannot log on to a hidden mailbox by using Base64 authentication for IMAP4 or for POP3 in an Exchange Server 2007 Service Pack 1 environment


View products that this article applies to.

Symptoms

In Exchange 2007 Service Pack 1 (SP1) Rollup 4 (RU4), you cannot log on to a hidden mailbox by using Base64 encoded PLAIN authentication through IMAP4 or POP3 protocols. The same operation has no problem in Exchange 2007 SP1 RU3 or in earlier versions.

Note You can identify this problem if you telnet to the Exchange Server 2007 SP1 server and issue the following commands:
  • a1 Capability
  • a2 Authenticate PLAIN
  • <base64 encoded authentication string>
When this problem occurs, you receive a "NO AUTHENTICATE failed" error message. The usual returned message should be "OK AUTHENTICATE completed".

↑ Back to the top


Cause

There is a Lightweight Directory Access Protocol (LDAP) query during the authentication process in which hidden mailboxes are missed.

↑ Back to the top


Resolution

To resolve this problem, install Update Rollup 9 for Exchange 2007 Service Pack 1. For more information about Update Rollup 9 for Exchange Server 2007 Service Pack 1, see the following Exchange Help topic: For more information about how to install the latest Exchange service pack or update rollup, see the following Exchange Help topic:

↑ Back to the top


Status

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

↑ Back to the top


More information

You can generate the Base64 encoded authentication string in Exchange Management Shell by running the following script. However,you must replace the domain, the username, and the real_password fields with the appropriate domain, username, and password:
$mailbox = "username" 
$account = "domain\username" 
$pwd = "real_password" 
$authstring = $mailbox +[char]0 + $account + [char]0 + $pwd 
write-host "string: <$authstring>" 
$encoded = [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes($Authstring)) 
write-host "Encoded: ($Encoded)"

↑ Back to the top


Keywords: KB969436, kbqfe, kbexpertiseinter, kbfix, kbsurveynew

↑ Back to the top

Article Info
Article ID : 969436
Revision : 2
Created on : 7/17/2009
Published on : 7/17/2009
Exists online : False
Views : 347