Microsoft 365 を使うときに段階リリースをするときに必ず考慮しなくてはいけないポイントを記載します。
前提
テナントに既存のシステムと同じドメインが設定されている状況でMicrosoft 365 にメールボックスが存在するが、利用としては旧システムを利用している場合。
※「移行時に注意が必要なExchange Onlineの仕様①」で記載した内容と似ていますが、今回は「承認済みドメイン」の話ではなく、そもそものExchange Onlineの仕様の話となります。
実際に今回の注意に影響しそうなシナリオを記載してきます。
影響するシナリオ
利用する人数(拠点)が多く、切り替え対応(主にクライアントサポート)が回らないので何回かに分けて本番リリースを行う。
Exchange Onlineで考慮しなくてはいけないポイント
前回の「移行時に注意が必要なExchange Onlineの仕様①」では、Microsoft 365はメールを送信する際に外部DNSを参照するかどうかの設定があるから気を付けましょうというものでした。
重要なポイントはDNSを参照するかだけではありません。DNSを参照する前にそもそもどのようにテナント内にメールを送信しているのかという技術面も重要です。これを理解しておかないと移行に影響がでます。
Exchange OnlineはSaaS 用にチューニングされている Exchange Server の集まりです。このExchange Serverはその昔は自社で運用されているのが一般的だった時代があります。
現在ではメールはインターネットを経由するものという考え方が一般的であり、DNS参照の話になるのですが、Exchange ServerにおいてServer内のユーザー間のメールのやり取りをする際に、いちいち内部DNSを参照すると手間になるわけで別の対応を取っています。
AADCで構成している環境でAD上でproxyAddresses 属性を触っている方やMicrosoft 365上のメールアドレス種類の管理(下図)などを触っている方は「SMTP」でメールの送信をしているという画面を見たことがあると思いますが、このSMTPはテナント外向けの設定であり、テナント内に関しては「SMTP」が標準となる前の「X.500形式のメールアドレス」を「legacyExchangeDN」という属性を利用して利用されています。
「legacyExchangeDN」は名前にレガシーとあるので「古いもので使われていないのかな?」と思われがちなのですが、いまもこの考え方は現役です。
話がテクニック寄りになりすぎたので、実際のシナリオに戻します。
何が問題となるのか?
段階リリースという方法をとるという際にはおそらく下記のようなシナリオになります。※わかりやすく2回とする
フェーズ①後
Microsoft 365:フェーズ①の人
既存システム:フェーズ②の人
フェーズ②後
Microsoft365:フェーズ①の人/フェーズ②の人
当然のことを書いているだけなのですが、意外と忘れられがちなのがM365から既存システムへ送信する可能性があることを意識していないことが多いのです。フェーズ①後ではフェーズ①の人がフェーズ②に送るときのことを考慮しなくてはいけません。
Microsoft 365 でメールボックスが作られたタイミングでメールの配送は内部配送となり、DNSを参照しません。何も検討していない場合はフェーズ①の段階で全員分の設定をして、フェーズ①後にフェーズ②の人がメールが届かない(実際はExOに届いている)みたいなトラブルになるのです。
対応
利用者に制約を付けたうえでonmicrosoft.comで作っておいたものをドメインを変更するという方法がシンプルです(GALに表示されるから嫌がられることはある)
GALを考慮すると切替ぎりぎりにメールボックスを作るという方法が思い浮かびますが、実際にメールボックスをデプロイするのでMS側の負担が大きく時間が読めないので優先順位の問題になるでしょうあ。
今回はわかりやすくユーザーの例だけを書いていますが、配布リストやメールが有効なセキュリティグループなどもそうですし、ユーザーが意図しているメール送信だけではなく、メールは予定表とも密接に紐づいていますので注意が必要です。
結論
Exchange Onlineはテナント内部にメールを送信する時とテナント外部にメールを送信する時で動きが異なります。メールボックスの有無でメールの配送ルートが変わることもあるのでメールのフローを考えたうえでの設計とすることが必要になります。
今回はテナント間というシナリオの制約をつけていませんでしたが、テナント間となると本件がさらに複雑化しますし、TeamsのURLの問題なども出てきてさらに考慮ポイントが増えてきます。実際にすべてクリアすることはMicrosoft の制約上難しいので案件ごとの要件によって設計が異なると思います。(Microsoft のセキュリティが厳しくなったことでお手上げになった部分などもある)