AuthenticatorSettingsComponent を使用すると、ユーザーは Web ブラウザーに移動したりサポートに問い合わせたりすることなく、アプリケーション内で多要素認証 (MFA) の認証要素、パスキー、リカバリーコードなど、自身の認証方法を直接管理できます。
仕組み
AuthenticatorSettingsComponent は、Auth0 の My Account API の認証方法を使用して、アプリケーション内に認証方法管理用の UI をレンダリングします。
My Account API には現在、特に Free ティアの tenant において低いレート制限が設定されています。そのため、これらのコンポーネントの使用中にエラーが発生する場合があります。
AuthenticatorSettingsComponent は アクセストークン を使用して、ログイン中のユーザーとして My Account API の /me/v1/authentication-methods endpoint を呼び出します。そのため、各ユーザーが変更できるのは自分自身の認証方法のみです。
-
AuthenticatorSettingsComponentは、エンドユーザー向けセルフサービスインターフェースを作成します。エンドユーザーは、メール OTP、SMS OTP、TOTP (認証器アプリ) 、Auth0 Guardian を介したプッシュ、パスキー、リカバリーコードなど、アカウントに登録されているすべての認証方法を登録、一覧表示、削除できます。 - ユーザーが Auth0 Organization を管理するdelegated adminインターフェースについては、Build a Delegated Admin Interface を参照してください。
前提条件
My Account API を有効化する
- Auth0 Dashboard > アプリケーション > APIs に移動します。
- Activate My Account API を選択して、テナントで有効化されていることを確認します。
アプリケーションを作成し、My Account API の権限を設定する
- Auth0 Dashboard > Applications に移動します。
- Create Application を選択します。
- Native を選択します。
-
Settings タブを選択し、次のコールバック URL を Allowed Callback URLs に追加します。
-
Allowed Logout URLs にも同じ URL を追加します。
- API Access タブを選択します。
-
Auth0 My Account API の Edit を選択し、User-delegated Access の権限を追加します。
create:me:authentication_methodsread:me:authentication_methodsupdate:me:authentication_methodsdelete:me:authentication_methods - Save を選択して、権限を保存します。
- ユーザーのアクセストークンには、ログイン時に付与された権限のみが含まれます。
- ユーザーが認証方法を登録、確認、削除できるようにするには、4 つすべてのスコープをリクエストします。
SDK をインストールする
com.auth0.universalcomponents:universal-components パッケージをインストールします。インストール手順の詳細とプラットフォーム要件については、Auth0 Universal Components for Android を参照してください。
SDK を初期化する
Application サブクラスまたはランチャー Activity の onCreate から、Auth0UniversalComponents.initialize(...) メソッドを一度だけ呼び出します。
MainActivity.kt
トークンプロバイダーを設定する
Auth0.Android の CredentialsManager をラップする DefaultTokenProvider を使用して、アプリケーションから資格情報をリクエストします。
Auth0 では、本番環境での連携には Auth0.Android の
CredentialsManager を使用することを推奨しています。ストレージ要件を満たせない場合に限り、カスタム TokenProvider を実装してください。CredentialsManager を使用せずに資格情報を管理するには、インターフェースを直接実装します。
コンポーネントをレンダリングする前に、ユーザーを認証する必要があります。SDK を初期化し、
TokenProvider を設定したら、設定画面に AuthenticatorSettingsComponent を追加します。これにより、ユーザーは MFA、パスキー、リカバリーコードをセルフサービスで包括的に管理できるようになります。詳細
認証方法の管理
AuthenticatorSettingsComponent のリファレンス、サポート対象の認証要素、Compose NavHost との連携について確認します。スタイルとテーマをカスタマイズ
Auth0 のデザイントークンシステムを使用して、色、タイポグラフィ、間隔、角丸、サイズのトークンを上書きします。