以前投稿した、「Exchange Server 2010でTelnetを用いた基本的なPOP3接続を確認する」、「Exchange Server 2010でTelnetを用いた基本的なIMAP4接続を確認する」で設定した環境(、「テキスト形式のログオン (基本認証): サーバーへのクライアントの認証に TLS 接続を不要としない」)を用いてBase64エンコードされたPLAIN認証でExchange Server 2010にPOP3/IMAP4接続できるかどうか確認してみました。
[手順]
- アクセスしたいユーザーのメールボックス、ユーザID、パスワードを準備し、[Exchange Management Shell]を起動し、以下のコマンドを実行します。
$mailbox = "<アクセスするユーザーのメールボックス>" $userid = "<ドメイン名ユーザーID>" $passwd = "<ユーザーIDのパスワード>" $authstring = $mailbox +[char]0 + $userid +[char]0 + $passwd write-host "String: ($authstring)" $encoded = [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes($authstring)) write-host "Base64 Encoded: ($encoded)"
- 出力された「Base64 Encoded:」文中にあるカッコ内の文字列をコピーします。
- Telnetを用いて、コマンドプロンプトからPOP3/IMAP4接続を行います。
- それぞれの接続に対して以下のコマンドを実行し、「+」が表示されたら、手順2.でコピーした文字列を貼り付け、実行します。
- POP3接続の場合
auth plain
- IMAP4接続の場合
? authenticate plain
- POP3接続の場合
- 接続に成功すると、それぞれの接続に対して、以下の内容が表示されます。
- POP3接続の場合
+ OK User successfully logged on. - IMAP4接続の場合
? OK AUTHENTICATE completed.
- POP3接続の場合
[参考]
- 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
http://support.microsoft.com/kb/969436/en-us