カスタムTOTP要素(MFA)

カスタムTOTP要素は、ユーザー認証にカスタム時間ベースのワンタイムパスコード(TOTP)ソリューションを使用できます。

ユーザーはサインイン時にカスタムTOTP要素を選択し、トークンからTOTPを提供して、OktaまたはOktaで保護されたリソースにサインインします。

この要素を設定するには、各トークン用のOkta要素APIを通してfactorProfileIdsharedSecretを渡します。

カスタムTOTP要素のインスタンスは、担当者グループごとに無制限に作成できますが、ユーザーは一度に1つのインスタンスにしか登録できません。

はじめに

  • Okta要素APIの説明書をお読みください。
  • orgでカスタムTOTPがまだ有効になっていない場合は、Oktaサポートに連絡して有効にしてください。
  • カスタムTOTP要素に登録する各ユーザー用に一意の共有シークレットを生成します。
  • 実装で使用するHMACと共有シークレット符号化アルゴリズムを書き留めます。
  • 一意の共有シークレットを持つハードウェアまたはソフトウェアセキュリティ トークンをエンドユーザーに提供します。

カスタムTOTPを要素として追加する

  1. Admin Console[Security(セキュリティ)][Multifactor(多要素)]に移動します。
  2. [Factor Types(要素タイプ)] タブで[TOTP]をクリックします。
  3. [Add TOTP Factor(TOTP要素を追加)]をクリックします。
  4. 次のオプションを構成します。実装に合ったHMACと共有シークレット符号化アルゴリズムを選択します。
    • [名前]
    • [TOTPの長さ]
    • [HMAC Algorithm(HMACアルゴリズム)]。実装に適したアルゴリズムを選択してください。
    • [Time step(時間ステップ)]。「Clock drift interval(クロックドリフト間隔)」を参照してください。
    • [Clock drift interval(クロック ドリフト期間)]。この設定により、トークンの現在時刻とサーバーの現在時刻間の許容ドリフトを組み込むことができます。時間ステップを15秒とし、クロックドリフト期間を3とした場合、Oktaはユーザーがパスコードを入力するまで15 X 3 = 45秒ほどパスコードを受け付けます。
    • [Shared secret encoding(共有シークレットのエンコード)]。実装に合ったアルゴリズムを選択してください。

  5. [Save(保存)]をクリックします。その要素と関連要素プロファイルIDが表示されます。
  6. ユーザーを登録するために要素プロファイルIDをコピーするには、クリップボードのアイコンをクリックします。Okta要素APIでユーザーを登録するときにこのIDを入力します。
  7. Okta要素APIでユーザーを登録します。APIを呼び出すために以下の情報があることを確認してください。
    • 要素タイプ
    • プロバイダー
    • 要素プロファイルID
    • 共有シークレット

    • 1人のユーザーは1つのカスタムTOTP要素にのみ登録できます。
    • ユーザーを登録するときは、要素IDと割り当てられたセキュリティトークンが一致することを確認してください。誤った要素IDを使用すると、ユーザーが認証を試みるときにエラーが発生します。
    • 複数のユーザーを登録する前に、1人のユーザーの登録で認証が成功したことを確認します。

Oktaの多要素認証ポリシーにカスタムTOTPを登録する

  1. Admin Console[Security(セキュリティ)][Multifactor(多要素)]に移動します。
  2. [Factor Enrollment(要素登録)]タブで、新しい多要素ポリシーを追加するか、既存の多要素ポリシーを編集します。

    ポリシーを追加する

    1. [Add Multifactor Policy(多要素ポリシーを追加)]をクリックします。
    2. 名前を入力します。
    3. ポリシーをグループに割り当てます。
    4. [TOTP]オプションを [Optional(任意)] または[Required(必須)]に設定します。
    5. [Create Policy(ポリシーを作成)]をクリックします。

    ポリシーを編集する

    1. 編集するポリシーを選択し、[Edit(編集)]をクリックします。
    2. [Effective factors(有効な要素)]で、[TOTP]オプションを [Optional(任意)] または [Required(必須)]に設定します。
    3. [Update Policy(ポリシーを更新)]をクリックします。
  1. ポリシーにルールを追加する場合は、「MFA登録ポリシーを構成する」を参照してください。

エンドユーザーエクスペリエンス

  1. サインオンポリシーで必要な場合、Oktaへのサインイン時やOktaで保護されたアプリへのアクセス時に、要素による認証を求めるプロンプトがユーザーに表示されます。
  2. ユーザーがOkta要素APIから登録されている場合、セキュリティトークンに表示されるパスコードを入力するプロンプトが表示されます。エンドユーザーがAPIから登録されていない場合、エラーメッセージが表示されます。

重要な考慮事項

  • 構成を確認します。追加のユーザーを登録する前に、TOTPトークンで少数のユーザーを登録して認証します。これにより、多くのユーザーに影響を与えることなく、潜在的な問題を特定して修正できます。要素プロファイルは、作成後に編集することはできません。プロファイルを誤って構成した場合、影響を受けるすべてのユーザーを新しいカスタムTOTPプロファイルに再登録する必要があります。
  • Admin Consoleから追加するカスタムTOTP要素の数に制限はありませんが、ユーザーは1つのカスタムTOTP要素にしか登録できません。
  • この機能は標準OTPトークンのみでサポートされています。独自仕様の実装や非標準トークンはサポートされていません。
  • 作成後にOTP構成を編集することはできません。[Add(追加)]をクリックして構成を保存する前に、正しい設定を選択します。