みち草

Azure中心にまとめる技術情報ブログ

Azure ADユーザーに多要素認証(MFA)を適用する方法

はじめに

今回は、Azure ADユーザーに多要素認証(MFA)を適用する方法を紹介します。

クラウドでは、ベンダーにより基盤側のセキュリティ対策はされているものの、
ユーザー権限を悪用されてしまっては意味がありません。

ユーザーのセキュリティを強化するMFAですが、費用や範囲の違いなどがあるため、目的に合わせて選びましょう。
比較だけ知りたい方は「まとめ」へどうぞ。

目次

セキュリティデフォルトを利用する

概要

1つ目は、セキュリティデフォルト設定を利用する方法です。
これは2019年10月頃にAzure ADに追加された設定値であり、MFAやレガシ認証のブロックが可能です。

セキュリティデフォルトについては以下を参照

docs.microsoft.com

この設定を用いることで、Azure AD内のすべてのユーザーに、無償でMFAを強制することができます。
Azure ADのメンバーやゲスト、ユーザー数に依らず無償で利用できますが、特定のユーザーのみ、 ということはできず必ず全ユーザーに適用されてしまいます。

お手軽に全体をセキュリティ強化したい、という場合に有効です。

設定方法

ポータルでAzure Active Directoryを開き、[プロパティ]の一番下にある[セキュリティの既定値の管理]をクリック、 [セキュリティ既定値の有効化]を[はい]にすることで、次回ログイン時にMFAの設定が求められます。
※2019年10月以降に作成されたAzure ADでは、最初から有効の可能性があります。

認証方法については指定できず、電話番号へのテキストメッセージか、Authenticatorなどの認証アプリしか利用できません。

MFA1
MFA1

Azure AD管理者のMFAを利用する

概要

2つ目は、Azure ADの管理者に対してMFAを有効にする方法です。

通常、個々のユーザーにMFAを適用するには後述のライセンスが必要になりますが、 対象ユーザーがAzure ADの「グローバル管理者」であれば、ライセンス不要でMFAを利用することができます。

グローバル管理者はAzure ADの最高権限であるため、全ユーザーにMFAはやりたくないが、 管理者だけでも...という場合に有効です。

現在では、後述のPremiumライセンスを用いた方法を推奨しているようです。

docs.microsoft.com

設定方法

ポータルでAzure Active Directoryを開き、[ユーザー]を開きます。
右上の[...]をクリックし、表示されるメニューの[Multi-Factor Authentication]をクリックします。

MFA2
MFA2

MFAを適用したいグローバル管理者ユーザーにチェックを入れ、右の[有効]をクリックすればOKです。
次回ログイン時にMFAの設定を求められます。

MFA3
MFA3

認証方法は、上部の[サービス設定]をクリックした先で指定することができます。
[検証オプション]から、ユーザーに使用させたい認証方法にチェックを入れ、下部の[保存]をクリックします。

電話の着信を用いるオプションを利用するには、Premiumライセンスの購入が必要です。

MFA4
MFA4

Premiumライセンス(条件付きアクセス)を利用する

概要

3つ目は、Azure AD Premium条件付きアクセスを利用する方法です。

対象ユーザーアカウント毎にAzure AD Premiumライセンス(P1またはP2)を購入し、条件付きアクセスを設定します。

ライセンスが必要ですが、電話認証もできる、ユーザーでもグループでも指定できる、 特定のユーザーや認証時のIPアドレスを指定して該当する場合にMFAを適用するなど、最も自由な設定ができます。

加えて、Premiumライセンスに付随する他の機能も利用可能です。
例:Azure ADのサインインログ取得、禁止パスワードの設定、セルフパスワードリセット、動的グループなど

Premiumライセンスの詳細については以下を参照

azure.microsoft.com

これまで紹介した方法で要件を満たせない場合や、MFA+αの機能を利用したい場合に有効です。

設定方法

ポータルでAzure Active Directoryを開き、[セキュリティ]-[条件付きアクセス]上部の[新しいポリシー]をクリックします。

MFA5
MFA5

要件に合わせてポリシーを設定します。
以下では、特定のユーザーに対して、Azureポータルへログインする際はアクセス場所に依らずMFAを要求するポリシーを作成しています。

ポリシーに名前をつけ、[ユーザーとグループ]欄にて対象のユーザーを指定します。
グループを指定することや、対象外のユーザーを指定することもできます。

MFA6
MFA6

[クラウドアプリまたは操作]にて、Azureポータルへのログインを示す[Microsoft Azure Management]を選択します。

MFA7
MFA7

[条件]にて、場所を[すべての場所]に指定します。
[条件]の設定を利用することで、オフィス以外の場所(グローバルIP)からのログイン時はMFAを要求することや、WindowsまたはMacOSの場合にMFAを要求する、などが可能です。

MFA8
MFA8

最後に、[アクセス許可]にて[多要素認証を要求する]にチェックを入れます。
[ポリシーの有効化]をオンにしてポリシー作成するのを忘れないようにしましょう。

MFA9
MFA9

これで設定は完了です。

認証方法を指定する場合は、「Azure AD管理者のMFAを利用する」と同様に[検証オプション]のチェックボックスを変更します。

MFA10
MFA10

まとめ

3つの方法を紹介しましたが、まとめると以下のようになります。
お手軽なセキュリティデフォルト、重要ユーザーだけでも守る管理者のMFA、フル機能のPremiumライセンス、というところでしょうか。

PremiumについてはO365系の一部ライセンスで利用することも可能と思いますが、自身が詳細を把握できていないため、Azure観点からP1/またはP2として記載しています。

セキュリティデフォルト Azure AD管理者のMFA 条件付きアクセス
対象ユーザー Azure AD全体 個別ユーザー指定
※Azure ADグローバル管理者のみ
ユーザー、グループなど任意に指定
認証方法 ・電話へのテキストメッセージ
・認証アプリの通知
・電話へのテキストメッセージ
・認証アプリの通知
・認証アプリの確認コード
・電話認証
・電話へのテキストメッセージ
・認証アプリの通知
・認証アプリの確認コード
追加ライセンス(費用) 不要 不要 ユーザー毎にAzure AD PremiumライセンスP1またはP2が必要
アクセス場所(IP)による制御 不可 不可 可能
その他 レガシ認証のブロックも可能 費用なく管理者にMFAを適用可能 Premiumライセンスに付随する他の機能も利用可能
・Azure ADのサインインログ
・禁止パスワードの設定
・セルフパスワードリセット
・動的グループ など

終わりに

今回はAzure ADユーザーにMFAを適用する方法を紹介しましたが、無償でMFAができるからセキュリティデフォルトがいい!など特定のどれかを推したいということではありません。

「MFA」のみの費用面で見ればセキュリティデフォルトや管理者用MFAがよく見え、Premiumライセンスは高く感じてしまうと思いますが、 Premiumライセンスにはその他にもいくつか機能がありますし、条件付きアクセスもMFA以外にAzureポータルへログインできる場所の制御などに使用することができます。

それぞれの違いを理解し適したものを選んでもらえればと思うので、本記事が検討材料として足しになれば幸いです。