条件付きアクセス×多要素認証におけるアプリケーションパスワード

皆さんこんにちは。国井です。

先日いただいたご質問で
条件付きアクセスで多要素認証を設定しているときに
アプリケーションパスワードを設定していたらアクセスできるのか?
というのがあり、みんなにも共有しておこうかなと思い、投稿してみました。

結論から言うと「アクセスできない」になるのですが、どのようなログ出力になるのか?であったり、どう対処すべきかであったりも含めて共有していこうと思います。

■ ■ ■

前提条件は次の通りです。

Exchange OnlineにiPhoneの標準メーラーを使ってExchange Onlineに接続
→ 多要素認証が使えないので、アプリケーションパスワードでアクセス

このような状況の時に、
Azure AD Identity Protectionでサインインするユーザーがリスクユーザーとして判定されている場合、条件付きアクセスで多要素認証を強制するように設定してみました。
iOSデバイス側でアプリケーションパスワードを利用してサインインしてみると
サインインは失敗する(失敗の仕方については後述)のですが、このときに管理者サイドではそのことをどうやって把握できるのか確認してみましょう。

結果の確認

条件付きアクセスによるアクセス制御の結果はAzure AD管理センターの[サインイン]で確認できます。サインインログの一覧から該当のログを参照すると、次のように表示されます。
状態は「成功」だけど条件付きアクセスは「失敗」という表示になっています。
ログには「単一要素認証」って表示されますが、これはアプリケーションパスワードを利用しているからなのでしょう。

image

他のタブを開いてみましょう。[条件付きアクセス]タブ。
ここではどの条件付きアクセスポリシーに引っかかってブロックされたかが確認できます。
ただし、この画面だけでは多要素認証をやらなかったのか?
それともアプリケーションパスワードをつかったからなのか?はわかりません。

image

もうちょっと進めてみましょう。次に[認証の詳細]タブ。こちらは予想通りの結果です。

image

ところが、[認証の詳細]タブに表示される内容は多要素認証を使っている場合、
下の画面のように2行にわたって認証の詳細が表示されます。
つまり、多要素認証を使っていなかったり、アプリケーションパスワードを使っている場合は
多要素認証にならないので、[認証方法]に表示される内容がひとつになるのですね。

image

ちなみに上の図は[結果の詳細]欄にMFA required in Azure ADと書かれていますが、
これは多要素認証に失敗した場合であって、成功した場合はMFA completed in Azure ADと表示されます。

image

参考までに、、ですが、多要素認証を利用した場合、サインインログは2つ表示されます。
ひとつは 状態 = 中断、条件付きアクセス = 成功
もうひとつは状態 = 成功、条件付きアクセス = 成功のログです。
後者のログはご覧のような形で表示されます。

image

ここまでの話をまとめると、多要素認証を設定している場合のログは次のようになります。

・アプリケーションパスワードの場合はログに「単一要素認証」と表示される

・多要素認証にトライしたけど失敗した場合は[認証の詳細]タブに
MFA required in Azure ADと表示される

・多要素認証に成功した場合は[認証の詳細]タブに
MFA completed in Azure ADと表示される

クライアント側の動作

続いてiOS側を見てみましょう。iOS標準メーラーからアプリケーションパスワードを利用して認証を完了させると、認証エラーのメッセージが出てこない代わりにご覧のようなメールだけを受信します。

IMG_0001

メール内のリンクをクリックするとApp Storeへリダイレクトされ、Outlookアプリのダウンロード画面が表示されます。つまり、iOS12よりも前の標準メーラーでは先進認証ができない(多要素認証が使えない)から黙ってOutlookアプリを使え!ということなのですね。
以前にも書きましたが、iOS12以降の標準メーラーはExchange ActiveSyncの代わりに先進認証を使うようになっていますので、多要素認証を使うようになり、アプリケーションパスワードを利用した認証はしなく(できなく)なります。