mcpField
A
auth0-mfa

auth0-mfa

github.com/auth0セキュリティ55811 回インストール1 日前に更新
リポジトリ

auth0-mfa について

アカウント保護や機密性の高い操作向けに、Auth0 の多要素認証を設定するガイドです。対応要素、リスクベースのポリシー、ステップアップ認証と複数フレームワークの実装資料を扱います。

主な機能

  1. 01複数の MFA 要素の設定
  2. 02全体または適応型 MFA ポリシーの設定
  3. 03acr_values によるステップアップ認証
  4. 04amr クレームによる認証方式の確認
  5. 05各フレームワークの例とバックエンド検証資料

活用シーン

  1. 01ユーザーログインへの MFA 追加
  2. 02決済や設定変更時の追加認証
  3. 03リスクシグナルに応じた MFA の適用
  4. 04バックエンドでの MFA 状態の検証

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/auth0/agent-skills --skill auth0-mfa

インストール後、Claude Code で/auth0-mfaを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
advanced.md
api.md
backend.md
examples.md

詳細

Auth0 MFA ガイド

ユーザーアカウントを保護するために多要素認証を追加し、機密性の高い操作では追加の認証を必須にします。


概要

MFA とは?

多要素認証(MFA)では、ユーザーがアカウントにアクセスする際に、2 つ以上の認証要素を提示する必要があります。Auth0 は複数の MFA 要素に対応しており、機密性の高い操作でステップアップ認証を利用できます。

このスキルを使用する場面
  • ユーザーアカウントを保護するために MFA を追加する場合
  • 機密性の高い操作(支払い、設定変更など)で追加の認証を必須にする場合
  • 適応型認証/リスクベース認証を実装する場合
  • コンプライアンス要件(PCI-DSS、SOC2、HIPAA)を満たす場合
対応している MFA 要素
要素種類説明
TOTP所持しているもの時間ベースのワンタイムパスワード(Google Authenticator、Authy)
SMS所持しているものテキストメッセージで送信されるワンタイムコード
Email所持しているものメールで送信されるワンタイムコード
Push所持しているものAuth0 Guardian アプリ経由のプッシュ通知
WebAuthn所持しているもの/本人であることセキュリティキー、生体認証、パスキー
Voice所持しているもの電話で送信されるワンタイムコード
Recovery Codeバックアップ1 回限り使用できるリカバリーコード
主な概念
概念説明
acr_values認証時に MFA を要求します
amr claimAuthentication Methods Reference(認証方法の参照)—ユーザーがどのように認証されたかを示します
ステップアップ認証初回ログイン後、特定の操作で MFA を必須にします
適応型 MFAリスクシグナルに基づいて条件付きで MFA を必須にします

ステップ 1:テナントで MFA を有効にする

Auth0 Dashboard から設定する
  1. Security → Multi-factor Auth に移動します
  2. 使用する要素(TOTP、SMS など)を有効にします
  3. Policies を設定します:
    • Always — すべてのログインで MFA を必須にします
    • Adaptive — リスクベースの MFA を使用します
    • Never — MFA を無効にします(代わりにステップアップ認証を使用してください)
Auth0 CLI から設定する
# View current MFA configuration
auth0 api get "guardian/factors"

# Enable TOTP (One-time Password)
auth0 api put "guardian/factors/otp" --data '{"enabled": true}'

# Enable SMS
auth0 api put "guardian/factors/sms" --data '{"enabled": true}'

# Enable Push notifications
auth0 api put "guardian/factors/push-notification" --data '{"enabled": true}'

# Enable WebAuthn (Roaming - Security Keys)
auth0 api put "guardian/factors/webauthn-roaming" --data '{"enabled": true}'

# Enable WebAuthn (Platform - Biometrics)
auth0 api put "guardian/factors/webauthn-platform" --data '{"enabled": true}'

# Enable Email
auth0 api put "guardian/factors/email" --data '{"enabled": true}'
MFA ポリシーを設定する
# Set MFA policy: "all-applications" or "confidence-score"
auth0 api patch "guardian/policies" --data '["all-applications"]'

ステップ 2:ステップアップ認証を実装する

ステップアップ認証では、すべてのログインで MFA を必須にすることなく、機密性の高い操作で MFA を要求できます。

acr_values パラメーター

認証リクエストに acr_values を含めることで MFA を要求できます:

acr_values=http://schemas.openid.net/pape/policies/2007/06/multi-factor
実装パターン

すべてのフレームワークで共通する基本的なパターンは次のとおりです:

  1. ユーザーがすでに MFA を完了しているか確認します(amr claim を調べます)
  2. 未完了の場合は、acr_values パラメーターで MFA を要求します
  3. MFA が検証されたら、機密性の高い操作を実行します

フレームワーク別の完全な例については、例のガイドを参照してください:

  • React(基本パターンとカスタムフック)
  • Next.js(App Router)
  • Vue.js
  • Angular

追加リソース

整理しやすいよう、このスキルは複数のファイルに分かれています:

ステップアップ認証の例

すべてのフレームワークの完全なコード例:

  • React(基本パターンとカスタムフックのパターン)
  • Next.js(API ルートを使用した App Router)
  • Vue.js(Composition API)
  • Angular(サービスとコンポーネント)
バックエンドでの検証

バックエンドで MFA の状態を検証する方法:

  • Node.js / Express での JWT 検証
  • Python / Flask での検証
  • ミドルウェアの例
高度なトピック

高度な MFA 実装パターン:

  • Auth0 Actions を使用した適応型 MFA
  • リスクシグナルに基づく条件付き MFA
  • MFA Enrollment API
リファレンスガイド

一般的なパターンとトラブルシューティング:

  • MFA を 30 日間記憶させる
  • 高額取引で MFA を必須にする
  • MFA の状態表示
  • エラー処理
  • AMR claim の値
  • テスト戦略
  • セキュリティに関する考慮事項

関連スキル

  • auth0-quickstart — Auth0 の基本設定
  • auth0-passkeys — WebAuthn/パスキーの実装
  • auth0-actions — カスタム認証ロジック

References

コメント