8.9. リカバリーコード
リカバリーコードは、Red Hat build of Keycloak によって自動生成される、連続したワンタイムパスワード (現在 12 個) です。認証フローに Recovery Authentication Code Form
オーセンティケーターを追加することで、コードを第 2 要素認証 (2FA) として使用できます。フロー内で設定すると、Red Hat build of Keycloak はユーザーに次に生成されるコードを順番に要求します。ユーザーが現在のコードを入力すると、そのコードは無効になり、次回のログイン時に新しいコードが必要になります。
リカバリーコードは、その性質上、通常は他の 2FA 方法のバックアップとして機能します。これらは、OTP Form
または WebAuthn Authenticator
を補完して、以前の 2FA 方式で使用されていたソフトウェアまたはハードウェアデバイスが壊れているか使用できない場合などに、Red Hat build of Keycloak にログインするための補助的な方法を提供します。
RecoveryCodes は テクノロジープレビュー であるため、完全にサポートされていません。この機能はデフォルトで無効化されています。
有効にするには、--features=preview
または --features=recovery-codes
を使用してサーバーを起動します。
8.9.1. リカバリーコードが必要なアクションを有効化する リンクのコピーリンクがクリップボードにコピーされました!
Red Hat build of Keycloak でリカバリーコードアクションが有効になっていることを確認します。
- メニューで Authentication をクリックします。
- Required Actions タブをクリックします。
- Recovery Authentication Codes スイッチの Enabled が On に設定されていることを確認します。
すべての新規ユーザーが最初のログイン時にリカバリーコードの認証情報を登録するようにする場合は Default Action スイッチを On に切り替えます。
8.9.2. ブラウザーフローにリカバリーコードを追加する リンクのコピーリンクがクリップボードにコピーされました!
次の手順では、デフォルトの Browser フローでログインの代替方法として Recovery Authentication Code Form
を追加します。
- レルムメニューで Authentication をクリックします。
- Browser フローをクリックします。
組み込みの Browser フローのコピーを作成するには、Action list から Duplicate を選択します。
たとえば、コピーの名前として Recovery Codes Browser と入力します。
- Duplicate をクリックします。
- Recovery Codes Browser - Conditional OTP フローで、Add (+) ボタンをクリックし、Add Execution を選択します。
- フィルターを使用して Recovery Authentication Code Form を見つけ、実行を 追加 します。
- 新しいステップの要件を Alternative に設定します。
OTP Form に対しても要件を Alternative に設定します。
リカバリーコードブラウザーフロー
- 画面上部の Action メニューをクリックします。
- ドロップダウンリストから Bind flow を選択します。
- ドロップダウンリストから Browser flow を選択して、この新しいフローをレルムのデフォルトフローとして設定します。
- Save をクリックします。
この設定では、2FA オーセンティケーター (OTP Form
および Recovery Authentication Code Form
) の両方が Red Hat build of Keycloak への代わりのログイン手段です。ユーザーが両方の認証情報タイプを設定している場合、デフォルトで OTP Form
が表示されますが、ログイン時に Recovery Authentication Code を選択できる別のオプション Try Another Way も利用できます。
2FA 設定のその他の例は、「2FA 条件付きワークフローの例」 を参照してください。
8.9.3. リカバリーコード認証情報を作成する リンクのコピーリンクがクリップボードにコピーされました!
リカバリーコードの必須アクションが有効になり、認証情報の種類がフロー内で管理されると、ユーザーは独自のコードを作成するようにリクエストできます。このアクションは、Red Hat build of Keycloak で使用できるもう 1 つの 必須アクション です (ユーザーがアカウントコンソールを使用して直接呼び出すか、管理者が管理コンソールを使用して割り当てます)。
必須アクションが実行されると、コードのリストが生成され、ユーザーに提示されます。このアクションでは、ユーザーがコードを安全な場所に保存できるように、コードのリストの出力、ダウンロード、またはコピーを提案します。セットアップを完了するには、I have saved these codes somewhere safe チェックボックスを事前にオンにしておく必要があります。
リカバリー認証コードの設定ページ
リカバリーコードはいつでも再作成できます。