インラインフックでTL:テレフォニープロバイダーを構成する
テレフォニーインラインフックを使用して外部のテレフォニーサービスプロバイダーに接続すると、ユーザーにワンタイムパスコード(OTP)を送信できるようになります。ここでは、テレフォニーインラインフックを追加および管理する方法について説明します。
仕組み
テレフォニーインラインフックは、外部システムでホスティングされるWebサービスにOktaからアウトバウンドで呼び出しを行えるようにします。テレフォニーサービスプロバイダーは、SMSや音声通話などの電話Authenticatorが関与する登録、認証、復旧フローに統合することができます。
外部のWebサービスに条件ロジックを構成することで、リクエストを各種テレフォニープロバイダーに送信できます。これにより、リクエスト発信元の国やその他のパラメーターに基づいてリクエストをリダイレクトできます。プライマリプロバイダーが失敗した際に、エラー処理によってセカンダリテレフォニープロバイダーにリクエストを送信することができます。
ユーザーがOTPを要求すると、Oktaはテレフォニーインラインフックを使ってこのリクエストを外部のWebサービスに転送します。次に、サービスはテレフォニープロバイダーにメッセージの配信を要求します。テレフォニープロバイダーはこのリクエストを処理し、ユーザーのデバイスにOTPを送信します。また、応答としてOTP配信ステータスをOktaに送信します。この応答はシステムログに登録されます。
テレフォニープロバイダーがOTPを配信できない場合、Oktaはフォールバックプロバイダーを使ってOTPを送信します。ただし、このフォールバックメカニズムではレートが大幅に制限されます。
より堅固なAuthenticatorを代わりに使用する
電話のOTPを使用しても、ユーザーの身元確認を保証できるわけではありません。SMSや音声通話による本人確認の潜在的なリスクを参照してください。
より堅固な要素を使用して認証するようユーザーに要求します。たとえば、ユーザーの存在を確認して、デバイスとの紐づけやハードウェア保護、フィッシング耐性もある要素を必須とします。こうした要素には、Authenticatorアプリ、メールマジックリンク、FIDO2(WebAuthn)などが含まれます。MFA要素の構成を参照してください。
開始する前の確認事項
次のいずれかの方法で、目的の外部テレフォニープロバイダーをOktaにセットアップします。
- Okta Workflowsを使用します。「外部テレフォニープロバイダー用のOkta Workflowsを構成する」を参照してください。呼び出しURL(Invoke URL)、エイリアス(Alias)、クライアントトークン(Client Token)をメモします。
- Okta APIを使用します。開発者ドキュメント「テレフォニーインラインフックリファレンス」を参照してください。
テレフォニーインラインフックを追加する
-
Admin Consoleでに移動します。
- インラインフックの追加(Add Inline Hook)をクリックし、テレフォニー(Telephony)を選択します。
-
以下のオプションを構成して保存(Save)をクリックします。
フィールド
説明
名前(Name) インラインフックのわかりやすい名前を入力します。 URL (URL) 呼び出しURL(Invoke URL)を入力します。これは、OTPをエンドユーザーのデバイスに送信するエンドポイントを含むテレフォニープロバイダーのURLです。 Oktaサービス保護レート制限を強制適用(Enforce Okta service protection rate limits)
Oktaはデフォルトでテレフォニーインラインフックにレート制限を強制適用します。これにより、テレフォニープロバイダーアカウントへの望ましくない課金を引き起こす可能性があるトールフラウド攻撃が防止されます。テレフォニーを使用した詐欺の防止または軽減を参照してください。
このレート制限保護はオプトアウトできます。ただし、これを行うと、トールフラウド攻撃を受けた場合にアカウントへ多額の課金が発生する可能性があります。Oktaはこのような課金について責任を負いません。Oktaはこの保護を有効のままにしておくことを推奨します。
認証フィールド(Authentication field)
ヘッダーベースの認証の認証情報を入力します。
Okta Workflowsを使用する場合は、外部テレフォニープロバイダー用のOkta Workflowを構成するで設定したエイリアスを入力します。
認証シークレット(Authentication secret) クライアントトークン(Client Token)を入力します。外部サービスは、認証シークレットを使用して、リクエストがサービスに対するOktaリクエストであることを検証する必要があります。 カスタムヘッダー(Custom Headers) 任意。カスタムヘッダーフィールドと値を追加します。
テレフォニーインラインフックをテストする
orgが利用できるアクティブテレフォニーサービスプロバイダーは1つだけです。
- インラインフック(Inline Hooks)で、アクティブ(Active)なテレフォニーインラインフックを見つけ、をクリックします。インラインフックのプレビュー(Preview)タブが開きます。
- このタブで、インラインフックリクエストの構成(Configure inline hook request)に移動し、テストのためにユーザーの情報を入力します。
- data.userProfile:電話を有効なAuthenticatorとして使用しているユーザーの名前を入力します。
- requestType:ドロップダウンメニューから、MFA登録、MFA検証、アカウントのロック解除、またはパスワードリセットのいずれかのイベントを選択し、ユーザーにSMSテキストの送信や音声通話を行います。
- サンプルインラインフックリクエストのプレビュー(Preview example Inline hook request)(Preview example inline hook request)セクションで、リクエストを生成(Generate Request)(Generate request)をクリックします。これにより、Oktaがテレフォニープロバイダーに送信するJSONリクエストが生成されます。
- 任意。編集(Edit)をクリックして生成されたリクエストを編集します。たとえば、リクエストを送信する前に、ユーザープロファイルや電話番号を編集できます。
- サービス レスポンスの表示(View Response)(View service's response)で、レスポンスの表示(View Response)(View response)をクリックします。これにより、サービスプロバイダーからのレスポンスが表示されます。
テスト中にテレフォニープロバイダーが失敗した場合、OTPは生成されません。
テレフォニーインラインフックの指標を表示する
Oktaでは、テレフォニーサービスプロバイダーのパフォーマンスの監視に役立つ基本的な指標が提供されます。指標は以下の値を追跡します。
- 過去30日間にフックが実行された合計回数。
- 成功した実行と失敗した実行の数。
- 成功した実行の平均実行時間。
-
Admin Consoleでに移動します。
- アクティブ(Active)なテレフォニーインラインフックを見つけ、をクリックします。
テレフォニープロバイダーを無効化する
-
Admin Consoleでに移動します。
- アクティブなテレフォニーインラインフックを見つけ、 をクリックします。
次の手順
SMS認証(MFA)を構成する
音声通話認証(MFA)を構成する