IMAP
メールサーバ上のメールボックスへアクセスし、メールやフォルダを操作するプロトコル。メールをサーバ側で管理し、複数の端末から状態を共有できる。送信には通常SMTPを使う。
イマシルちゃんの解説
家でも学校でも、同じ書類棚を開けると思ってみてね。
どちらから見ても、整理した場所や読んだ印がそろっていると便利だよね。
手元に写しを置くこともできるけれど、もとの棚と内容を合わせるんだ。
新しい手紙を相手へ届ける仕事は、別の窓口が受け持つよ。
より深い解説
メールを置く場所と操作
IMAPでは、メールをサーバ側のメールボックスに保持し、クライアントが必要な情報を取得・更新する。本文の取得だけでなく、フォルダの作成、メールの移動、検索、既読状態の管理などを行える。
複数の端末が同じアカウントを使う場合も、状態を共有しやすい。一方、手元のキャッシュとサーバの情報を同期する必要があり、オフライン中の操作は再接続後に反映される場合がある。
通信の役割
IMAPでメールを下書きフォルダへ保存することと、そのメールを相手へ配送することは別の操作である。
ポートと保護
暗号化しない通信では、認証情報やメールの内容が漏れるおそれがある。利用する認証方式に加え、TLSを使う設定と証明書の検証を確認する。IMAP4rev1はRFC 3501、IMAP4rev2はRFC 9051で定義される。
POP3との比較
POP3は、メールサーバからメッセージを取り出すためのプロトコルである。取得後にサーバ側を削除する使い方が多いが、コピーを残す設定もできる。必ず削除する仕様ではない。
| 観点 | IMAP | POP3 |
|---|---|---|
| 主な操作場所 | メールボックスをサーバ側で管理する | 取得したメールを端末側で管理する使い方が中心 |
| フォルダや既読状態の共有 | プロトコルで扱える | IMAPのような同期機能は備えない |
| TCPポート | 143、TLSを最初から使う場合は993 | 110、TLSを最初から使う場合は995 |
Webメールの構成
Webメールは、ブラウザでメールを操作するサービス形態である。ブラウザからWebサーバへの通信と、Webアプリケーションからメールサーバへの通信を分けて考える。
後者にIMAPを使う構成では、Webアプリケーションが利用者の代わりにメールボックスを操作する。ブラウザが直接IMAPを話すという意味ではなく、実装によってはメールサービス独自の通信インタフェースを使う場合もある。