Adaptive MFA

Adaptive MFAは、実ユーザーの負担を増やさずに、不正者からテナントを保護する柔軟性と拡張性を備えたMFAポリシーです。Adaptive MFAは、ログイントランザクションごとに潜在リスクを評価し、必要な場合は、さらなる検証をユーザーに求めます。

仕組み

ログイントランザクション中に、Adaptive MFAは以下の3つのリスク評価の分析に基づいて、 全体的な信頼スコアを計算します。

評価子 危険信号 判定方法
NewDevice ユーザーがアカウントを使って過去30日以内に使用していないデバイスからサインインしようとしました。 ユーザーエージェントとブラウザーのクッキーを基にデバイスを特定します。ログイン時にデバイス情報をアカウントのデバイス一覧と照らし合わせます。
ImpossibleTravel ユーザーがログインしようとしている地理的な位置が、最後にログインした場所から移動不可能な場所を示しています。 最後の有効な場所からサインインの場所までの距離を算出し、2つのサインイン間の経過時間から推定される移動速度を算出します。その速度を合理的に可能な移動速度と比較します。
UntrustedIP 疑わしい動作のあるIPアドレスからユーザーがサインインしようとしています。 Auth0はトラフィックイベントから情報を収集し、IPアドレスが悪意のある行為者によって高速攻撃に利用されている可能性を判断します。
PhoneNumber ログインやサインアップ時に入力された電話番号が無効か、信頼できない出所からのものであると判断されました。 Auth0は電話番号の構造と出所の情報を収集し、正しいユーザーに使用されているかを判断します。
Overall Risk Score(総リスクスコア) 上記のNewDeviceImpossibleTravelUntrustedIP の要素を組み合わせたものです。PhoneNumberは総リスクスコアに影響しません。 Auth0は3つのスコアから総スコアを評価します。独自のビジネスロジックを実装したい場合には、アクションを使用します。

全体的な信頼スコアが低い(ログイントランザクションが高リスクである)と判断された場合、ユーザーはMFAで本人確認を行う必要があります。MFAに登録されていない場合、追加の検証手続きを済ませないと、ユーザーがこれを行う資格は得られません。

Adaptive MFAには、ユーザーが本物であることを確認するための包括的なセキュリティフローが含まれています。

Auth0のログインに関するAdaptive MFAのフロー図

Adaptive MFAは、ありとあらゆる既存のMFAセッション(たとえば、ユーザーが前のMFAフロー中にRemember this browser(このブラウザーを記憶する)を選択した)を無視し、ユーザーがMFAチャレンジをバイパスすることを許可しません。

Adaptive MFAをカスタマイズする

アクションを使用してMFAフローをカスタマイズすると、ユーザーに最高のエクスペリエンスを提供することができます。

リスク評価、信頼スコア、およびカスタマイズオプションの詳細については、「Adaptive MFAをカスタマイズする」をお読みください。

サポートと制限事項

認可フロー

Adaptive MFAはエンドユーザーから開始されるすべての認証フローと認可フローによってサポートされています。異なるフローとプロトコルの詳細については、「認証フローと認可フロー」および「プロトコル」をお読みください。

プロトコル フロー 対応
OIDC/OAuth2 認可コードフロー 対応
OIDC/OAuth2 PKCEを用いた認可コードフロー 対応
OIDC/OAuth2 Form Postを用いた暗示的なフロー 対応
OIDC/OAuth2 ハイブリッドフロー 対応
OIDC/OAuth2 クライアントの資格情報 非対応
OIDC/OAuth2 デバイス認可 非対応
OIDC/OAuth2 リソース所有者のパスワード(ROP) 非対応
SAML サービスプロバイダー起点(SP-initiated) 対応
SAML IDプロバイダー起点(IdP-initiated) 非対応*
WS-Federation 該当なし 対応
AD/LDAP 該当なし 対応

*Adaptive MFAはSAML IdP起点フローには対応していませんが、OIDCアプリケーションを使用してフローをシミュレートすることは可能です。詳細については、「IdP起点SAMLサインオンをOIDCアプリに構成」をお読みください。

ソーシャル接続

Adaptive MFAは、ユーザーごとにメールアドレスが用意されている場合、ソーシャル接続タイプを完全にサポートします。

Adaptive MFAでは、ユーザーがMFAに登録していない場合に生じるメールチャレンジステップをメールアドレスで完了することを義務付けています。メールアドレスを使用できない場合は、メールチャレンジを実行することができず、トランザクションはブロックされます。このシナリオではセキュリティリスクは生じませんが、使える機能は制限されます。

ソーシャル接続を設定した後、メールアドレスを使用できるつもりでいたが実際にできない場合は、構成を確認した上で正しいスコープ、クレーム、および権限を要求しているか確認してください。サポートされるソーシャル接続とそのインストール方法の詳細については、「Auth0 Marketplaceでのソーシャル接続」をお読みください。

Auth0の機能

以下の表は、Adaptive MFAを使ったAuth0の実装と機能をまとめたものです。

ログインフローの実装 Adaptive MFAサポートレベル
ユニバーサルログイン サポート
クラシックログイン、カスタマイズなし サポート
クラシックログイン(Auth0がホスト)、lock.js Lockテンプレートのカスタムログインページ サポート
クラシックログイン(Auth0がホスト)、auth0.jsカスタムログインフォームテンプレートのカスタムログインページ サポート
クラシックログイン(Auth0がホスト)、メールパスワードレスフローおよびlock.jsパスワードレステンプレートのカスタムログインページ サポート
クラシックログイン(Auth0がホスト)、SMSパスワードレスフローおよびlock.jsパスワードレステンプレートのカスタムログインページ 要件である、メールアドレスを利用可能にしないため、サポートしていません。
リソース所有者のパスワード付与(ROPG)フローを使用するWebまたはネイティブアプリ(lock.androidおよびlock.swift SDKの旧バージョンを使用するものを含む) サポートしていますが、以下の制限付きです:
•すべてのエンドユーザーがすでにMFAに登録されている場合のみ機能します(サインアップ時にユーザーが登録を求められた時)。登録されていないユーザーは、危険なシナリオでブロックされます。
•ユーザーが新しいデバイスでログインしているかを判断するリスク評価は機能しません。ROPGフローは、リスクを特定するのに必要なブラウザークッキーをサポートしていません。
•IPレピュテーションのリスク評価が機能するには、発信元のIPアドレスから、情報を含んだauth0-forwarded-forヘッダーを渡す必要があります。
埋め込みユニバーサルログインをサポートしているSDKの最新バージョンを使用しているネイティブアプリ サポート
SDKの最新バージョンおよびROPGフローを使用しているネイティブアプリ サポートしていますが、以下の制限付きです:
•すべてのエンドユーザーがすでにMFAに登録されている場合のみ機能します(サインアップ時にユーザーが登録を求められた時)。登録されていないユーザーは、危険なシナリオでブロックされます。
•ユーザーが新しいデバイスでログインしているかを判断するリスク評価は機能しません。ROPGフローは、リスクを特定するのに必要なブラウザークッキーをサポートしていません。
•IPレピュテーションのリスク評価が機能するには、発信元のIPアドレスから、情報を含んだauth0-forwarded-forヘッダーを渡す必要があります。
cross-origin認証(co/認証エンドポイント)を実行するlock.jsまたはauth0.jsを使用しているあなた(Auth0ではなく)がホストするフロー サポート

もっと詳しく