ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Adaptive Access Manager開発者ガイド
11gリリース2 (11.1.2.2)
B71697-05
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

15 OTP Anywhereの実装

この章では、OTP Anywhereの実装方法について説明します。OTP Anywhereにより、エンド・ユーザーは、サーバーで生成されたワンタイム・パスワード(OTP)を入力することで自己認証を行えます。OTPがSMS経由で送信される場合は、ユーザーの携帯電話が、ユーザーが所有していることを示す物理的な二次的要因として機能します。同様に、有効なユーザーのみがワンタイム・パスワードにアクセスできることをより高いレベルで保証するために、認証が帯域外で送信されます。

この章には次の項が含まれます:

15.1 OTPの実装について

ワンタイム・パスワード(OTP)は二次的認証であり、標準的なユーザー名とパスワードの資格証明に加えてこれを使用することにより、既存の認証および権限プロセスが強化され、ユーザーに対するセキュリティが補強されます。アプリケーションから、現在のセッションだけで有効なワンタイム・パスワードがユーザーに送信されます。システムはこのパスワードを使用して、ユーザーにチャレンジしてアイデンティティを検証します。

Oracle Adaptive Access Manager 11gには、Oracle User Messaging Service (UMS)を使用したワンタイム・パスワード(OTP)認証をサポートするフレームワークが組み込まれています。この実装により、アプリケーションはOTPを使用してユーザーにチャレンジする際に、Oracle User Messaging Service (UMS)をパスワード配信方法として使用できます。

OTP Anywhereの利点は、次のとおりです。

  • これは、11gチャレンジ・プロセッサ・フレームワーク上にビルドされています。

  • Oracle User Messaging Serviceとの統合が即時利用可能です。

  • 登録ユーザー・インタフェースがカスタマイズ可能です。

  • オプションとしてオプトアウト機能が使用できます。

  • 配信チャネルとして電子メール、SMSがサポートされています。

15.2 概念と用語

この項では、OTP Anywhere実装に関連するキー定義、頭字語、略語について説明します。

表15-1 OTP Anywhereの用語

用語 説明

ワンタイム・パスワード認証(OTP)

ワンタイム・パスワード(OTP)は、1回だけ使用する英数字の資格証明に基づいて個人を認証するために使用します。OTPは、ユーザーが構成した配信方法に従って配信されます。ユーザーは操作を続行するために、レスポンスとしてOTP資格証明を提供します。帯域外OTPを使用する主な利点は次のとおりです。

  • エンド・ユーザーのブラウザ/インターネットに障害が発生しても、ブラウザとは別の通信帯域で認証を安全に行うことができます。

  • ユーザーは、独自のハードウェアまたはいかなる種類のクライアント・ソフトウェアも必要としません。

Oracle User Messaging Service (UMS)

Oracle User Messaging Serviceは、SOAスイートのインストール時にSOAドメインにインストールされるファシリティです。Oracle User Messaging Serviceは、ユーザーとデプロイされたアプリケーション間での双方向通信を可能にします。通信は、電子メール、インスタント・メッセージ(IMまたはチャット)、およびSMSなどの様々なチャネルを通すことができます。OAAMは、ユーザーとの通信手段としてOracle User Messaging Serviceを使用します。

チャレンジ・プロセッサ

チャレンジ・プロセッサは、ChallengeProcessorIntfインタフェースを実装するかAbstractChallengeProcessorクラスを拡張するJavaコードです。カスタム・チャレンジ・プロセッサを作成して、チャレンジの生成、ユーザーからのチャレンジ回答の検証、およびサービス配信とサービス可用性のステータスの確認を行うことができます。デフォルトでは、OAAMには、Oracle User Messaging Service配信を介して、SMSと電子メールによるKBA質問チャレンジおよびOTPチャレンジに対するサポート(またはチャレンジ・プロセッサ実装)が組み込まれています。

チャレンジ・タイプ

チャネルは、OTPをユーザーに送信するために使用される配信チャネル(電子メール、SMSまたはIM)です。チャレンジ・タイプは、ユーザーにチャレンジするためにOTPで使用しているチャネルです。チャレンジ・タイプを構成すれば、必要なチャレンジの処理で生じる差異に対応できます。チャレンジ・タイプの処理として、チャレンジに使用する機密情報の生成からユーザーへの機密情報の配信、および最終的なユーザー入力の検証にいたるまで、チャレンジ・タイプのあらゆる作業が考えられます。これらの主要プロセス(生成、送信、および検証)では、チャレンジのタイプ別に若干異なるコードが必要になる場合があります。


15.3 前提条件

アプリケーションにOTPを構成する前に、次の前提条件が満たされていることを確認してください。


注意:

カスタムOAAM拡張のデプロイに精通している必要があります。

Oracle Adaptive Access Managerは、カスタマイズされたJARファイルとその他のファイルを拡張共有ライブラリに追加してカスタマイズされている必要があります。

カスタマイズされたJARファイルとその他のファイルの追加の詳細は、第7章「OAAM拡張共有ライブラリの使用によるOAAMのカスタマイズ」を参照してください。


15.3.1 SOAスイートのインストール

Oracle User Messaging Service (UMS)ドライバとOTPを構成するには、事前にSOAスイート11gをインストールしてSOAドメインを構成し、管理サーバーとSOAサーバーを実行しておく必要があります。また、Oracle Enterprise Manager Fusion Middleware管理コンソールにアクセスする必要もあります。

SOA Suite 11gのインストールの詳細は、『Oracle Fusion Middleware Oracle SOA SuiteおよびOracle Business Process Management Suiteインストレーション・ガイド』を参照してください。

15.3.2 Oracle User Messaging Serviceドライバの構成

User Messaging Serviceには、それぞれ特定のチャネルのトラフィックを処理するドライバがいくつか含まれています。ドライバはチャネルを管理します。メッセージの送信元である適切な配信サーバーおよびプロトコルに対してこれを構成する必要があります。ドライバを構成するには、『Oracle Fusion Middleware Oracle SOA SuiteおよびOracle Business Process Management Suite管理者ガイド』のUser Messaging Serviceドライバの構成に関する項の手順に従います。

15.3.2.1 電子メール・ドライバ

『Oracle Fusion Middleware Oracle SOA SuiteおよびOracle Business Process Management Suite管理者ガイド』の電子メール・ドライバの構成に関する項の説明に従って、電子メール・ドライバをSMTPサーバーに構成します。リモート・ゲートウェイに接続するためのパラメータ値を指定する必要があります。

表15-2 SMTPサーバーへの接続

パラメータ 説明

OutgoingMailServer

電子メールの送信が必要な場合は必須です。例: smtp.name.com for name

OutgoingMailServerPort

SMTPサーバーのポート番号。

OutgoingMailServerSecurity

使用可能な値はTLSとSSLです。

OutgoingDefaultFromAddress(オプション)

電子メール・メッセージの送信者として指定される電子メールのアドレス。

OutgoingUsername

電子メールの送信元であるユーザー・アカウント。

OutgoingPassword

アカウントのパスワード(暗号化形式で格納されています)。


「適用」を押します。これらの設定を有効にするには、ドライバを再起動する必要があります。

15.3.2.2 SMPPドライバ

Short Message Peer-to-Peer (SMPP)は、最も一般的なGSM SMSプロトコルの1つです。ユーザー・メッセージング・サービスには、事前作成のSMPPプロトコルの実装がドライバとして含まれています。このドライバは、ショート・メッセージを送受信できます。


注意:

SMSの場合は、デプロイして即時利用できる電子メール・ドライバと異なり、最初にSMPPドライバをデプロイしてから構成を変更する必要があります。

『Oracle Fusion Middleware Oracle SOA SuiteおよびOracle Business Process Management Suite管理者ガイド』のSMPPドライバの構成に関する項の説明に従って、SMPPドライバを構成します。ドライバのゲートウェイ・ベンダーに接続するためのパラメータ値を指定する必要があります。

表15-3 ベンダーへの接続

パラメータ 説明

SmsAccountId

SMS-CのアカウントID。これはベンダー・アカウントIDであり、ベンダーから取得する必要があります。

SmsServerHost

SMS-Cサーバーの名前(またはIPアドレス)。TransmitterSystemId

TransmitterSystemPassword

送信側システムのパスワード。パスワードのタイプ(「間接パスワード、新規のユーザーの作成」、「間接パスワード、既存のユーザーの使用」、「クリアテキスト・パスワードの使用」から選択)とパスワードが含まれています。これは、ベンダー・アカウントIDに対応するパスワードです。

TransmitterSystemType

送信側システムのタイプ。デフォルトはLogicaです。

ReceiverSystemId

メッセージの受信に使用するアカウントID。ReceiverSystemPassword

ReceiverSystemType

受信側システムのタイプ。デフォルトはLogicaです。

ServerTransmitterPort

送信側サーバーのTCPポート番号。

ServerReceiverPort

受信側サーバーのTCPポート番号。

DefaultEncoding

SMPPドライバのデフォルトのエンコーディング。デフォルトはIA5です。ドロップダウン・リストから「IA5」、「UCS2」または「GSM_DEFAULT」を選択します。

DefaultSenderAddress

デフォルトの送信者アドレス。


パラメータ値を入力したら、「適用」を押します。これらの設定を有効にするには、ドライバを再起動する必要があります。

15.4 OTP設定のロードマップ

配信方法としてOracle User Messaging Service (UMS)を使用するOTPは、OAAMサーバーの標準機能です。この項では、この機能の実装に必要な手順の概要について説明します。

OAAMサーバー・インタフェースのカスタマイズ手順に従って、カスタマイズされたJARファイルとその他のファイルを拡張共有ライブラリに追加します。OAAMサーバー・インタフェースのカスタマイズの詳細は、第7章「OAAM拡張共有ライブラリの使用によるOAAMのカスタマイズ」を参照してください。

Oracle User Messaging Service (UMS)とOTP実装は、OAAMサーバーのチャレンジ・プロセス・フレームワークを使用してOAAMサーバー・ログイン、チャレンジ、および登録の各フローに統合されています。ログイン、チャレンジ、登録の各フローの詳細は、第2章「Oracle Adaptive Access Managerのネイティブ統合」を参照してください。

15.5 登録とユーザー・プリファレンスの有効化

登録フローとユーザー・プリファレンスを有効化するには、次のプロパティをtrueに設定します。

表15-5 OTPプロファイル登録とプリファレンス設定の有効化

プロパティ 説明

bharosa.uio.default.register.userinfo.enabled

OTPチャネルが有効化されていて登録が必要な場合、このプロパティをtrueに設定すると、プロファイル登録ページが有効になります。

bharosa.uio.default.userpreferences.userinfo.enabled

OTPチャネルが有効化されていてプリファレンス設定が許可されている場合、このプロパティをtrueに設定すると、ユーザーはプリファレンスを設定できます。

「ユーザー・プリファレンス」ページを使用して、ユーザーは、イメージ/フレーズ、チャレンジ質問の変更、デバイスの登録解除およびOTPプロファイルの更新を実行できます。


  1. OAAM管理コンソールにログインします。

  2. ナビゲーション・ペインで、「環境」ノードの下の「プロパティ」をダブルクリックします。プロパティ検索ページが表示されます。

  3. 「名前」フィールドにbharosa.uio.default.register.userinfo.enabledと入力し、「検索」をクリックします。

  4. 「検索結果」セクションでプロパティをクリックして選択し、値をtrueに変更して「保存」をクリックします。

  5. 「名前」フィールドにbharosa.uio.default.userpreferences.userinfo.enabledと入力し、「検索」をクリックします。

  6. 「検索結果」セクションでプロパティをクリックして選択し、値をtrueに変更して「保存」をクリックします。

15.6 OTPチャレンジ・タイプの有効化

チャレンジ・タイプを有効化するには、適切なプロパティをtrueに設定します。プロパティをtrueに設定することにより、ポリシーは、チャレンジ・タイプ(電子メール、SMS、またはIM)を介し、OTPを使用してチャレンジできるようになります。登録フローで電子メール、SMS、またはIMのページが表示されます。

チャレンジ・タイプを、そのチャレンジ・タイプの関連作業を実行するために必要なJavaコードに関連付ける必要があります。チャレンジ・タイプID (ChallengeEmail)は、チャレンジ・タイプを使用する際にルールにより返されるルール・アクションと一致している必要があります。

表15-6 Oracle User Messaging ServiceのOTPチャレンジ・タイプ

プロパティ デフォルト値 説明

bharosa.uio.default.challenge.type.enum.ChallengeEmail.available

false

電子メール・チャレンジ・タイプの可用性フラグ

bharosa.uio.default.challenge.type.enum.ChallengeSMS.available

false

SMSチャレンジ・タイプの可用性フラグ

bharosa.uio.default.challenge.type.enum.ChallengeIM.available

false

インスタント・メッセージのチャレンジ・タイプの可用性フラグ


15.7 Oracle User Messaging Serviceの統合

Oracle User Messaging Service (UMS)サーバーのURLと資格証明用に設定するプロパティを、表15-7に示します。これらのプロパティは、OAAM管理でプロパティ・エディタを使用して編集できます。注意: エンド・ポイントは、OAAMでOracle User Messaging Serviceへのコール送信に使用するWebサービスURLです。

表15-7 Oracle User Messaging Service ServerのURLと資格証明

プロパティ デフォルト値 説明

bharosa.uio.default.ums.integration.webservice


UMSサーバーのWebサービスURL

http://UMS_Server_URL:

UMS_Port/

ucs/messaging/webservice

bharosa.uio.default.ums.integration.parlayx.endpoint


UMSサーバーのParlayXエンドポイントURL

http://UMS_Server_URL:UMS_Port/

sdpmessaging/parlayx/

SendMessageService

bharosa.uio.default.ums.integration.useParlayX

false

WebサービスAPIまたはparlayx APIの使用を構成します。デフォルトでは、この値はfalseです(Webサービスの使用をお薦めします)。

bharosa.uio.default.ums.integration.userName


Oracle User Messaging Serviceサーバーのユーザー名

bharosa.uio.default.ums.integration.password


Oracle User Messaging Serviceサーバーのパスワード

bharosa.uio.default.ums.integtaion.policies


Oracle User Messaging Serviceの認証ポリシー

bharosa.uio.default.ums.integration.fromAddress

demo@oracle.com

OTPメッセージ用のOAAM送信元アドレス

bharosa.uio.default.ums.integration.message.status.poll.attempts

3

待機ページが表示されるたびにステータス・ポーリングを試みる回数

bharosa.uio.default.ums.integration.message.status.poll.delay

1000

待機ページが表示されているときのステータス・ポーリング間の遅延

bharosa.uio.default.ums.integration.sleepInterval

10000


bharosa.uio.default.ums.integration.deliveryPage.delay

3000



Oracle User Messaging Serviceサーバーのプロパティ設定後に、アプリケーションを再起動してください。

15.8 登録ページの設定

登録ページの設定には、次のタスクが含まれます。

15.8.1 OTP登録およびチャレンジのオプトアウトの有効化

オプトアウト機能はデフォルトでは無効になっています。ユーザーに対してオプトアウトを有効にするには、このプロパティをtrueに設定します。

表15-8 OTPのオプトアウト・プロパティ

プロパティ デフォルト値

bharosa.uio.default.otp.optOut.enabled

false

bharosa.uio.default.otp.optOut.managerClass

com.bharosa.uio.manager.user.DefaultContactInfoManager


ユーザーがOTPプロファイルの登録をオプトアウトできるようにするには、プロパティ・エディタを使用して次のプロパティを設定することで、OTP登録ページ上の「辞退」ボタンを有効にする必要があります。

bharosa.uio.default.register.userinfo.decline.enabled = true

bharosa.uio.default.userpreferences.userinfo.decline.enabled = true


注意:

これらのプロパティがtrueであっても、「オプトアウト」プロパティがfalseの場合、このボタンは表示されません。

「辞退」ボタンが有効になっている場合、OTP登録ページ上に別のオプションが表示され、このオプションを使用して、ユーザーはOTPチャレンジをオプトアウトできます。ユーザーはOTPの再登録を要求されることはなく、OTPチャレンジを受信しません。ただし、カスタマ・ケアOTPプロファイルのリセット(またはすべてリセット)が実行されると、ユーザーは再度OTPに登録できます。

また、OTPをオプトアウトしたとしても、ユーザーは、ユーザー・プリファレンスのOTPページにアクセスして情報を追加し、「続行」をクリックできます。これにより、OTP対象外のフラグが削除され、ユーザーがOTPに登録されます。

15.8.2 登録ページの「ご使用条件」チェック・ボックスおよびフィールドの構成

OTP登録ページの「ご使用条件」チェック・ボックスおよびフィールドを構成するには、「ご使用条件」プロパティをoaam_custom.propertiesに追加します。

表15-9 「ご使用条件」チェック・ボックス

プロパティ デフォルト値 説明

bharosa.uio.default.userinfo.inputs.enum.terms

4

ご使用条件の列挙値

bharosa.uio.default.userinfo.inputs.enum.terms.name

ご使用条件

「ご使用条件」チェック・ボックスの名前

bharosa.uio.default.userinfo.inputs.enum.terms.description

ご使用条件

「ご使用条件」チェック・ボックスの説明

bharosa.uio.default.userinfo.inputs.enum.terms.inputname

terms

「ご使用条件」チェック・ボックスのHTML入力名

bharosa.uio.default.userinfo.inputs.enum.terms.inputtype

checkbox

「ご使用条件」チェック・ボックスのHTML入力タイプ

bharosa.uio.default.userinfo.inputs.enum.terms.values

true

登録およびユーザー・プリファレンスにおける「ご使用条件」チェック・ボックスの必須値

bharosa.uio.default.userinfo.inputs.enum.terms.maxlength

40

「ご使用条件」チェック・ボックスのHTML入力の最大長

bharosa.uio.default.userinfo.inputs.enum.terms.required

true

登録およびユーザー・プリファレンスにおける「ご使用条件」チェック・ボックスの必須フラグ

bharosa.uio.default.userinfo.inputs.enum.terms.order

5

「ご使用条件」チェック・ボックスのページにおける順序

bharosa.uio.default.userinfo.inputs.enum.terms.enabled

true

「ご使用条件」列挙項目の有効フラグ

bharosa.uio.default.userinfo.inputs.enum.terms.regex

.+

「ご使用条件」チェック・ボックスの検証用の正規表現

bharosa.uio.default.userinfo.inputs.enum.terms.errorCode

otp.invalid.terms

「ご使用条件」の検証が失敗した場合にエラー・メッセージを取得するためのエラー・コード

bharosa.uio.default.userinfo.inputs.enum.terms.managerClass

com.bharosa.uio.manager.user.DefaultContactInfoManager

データ・ストレージからご使用条件を保存/取得するために使用するJavaクラス


次に、モバイル入力登録フィールドのプロパティをoaam_custom.propertiesに追加します。

表15-10 モバイル入力 - プロパティ・ファイル

プロパティ デフォルト値 説明

bharosa.uio.default.userinfo.inputs.enum.mobile

0

携帯電話の列挙値

bharosa.uio.default.userinfo.inputs.enum.mobile.name

携帯電話

「携帯電話」フィールドの名前

bharosa.uio.default.userinfo.inputs.enum.mobile.description

携帯電話

「携帯電話」フィールドの説明

bharosa.uio.default.userinfo.inputs.enum.mobile.inputname

cell number

「携帯電話」フィールドのHTML入力名

bharosa.uio.default.userinfo.inputs.enum.mobile.inputtype

text

「携帯電話」フィールドのHTML入力タイプ

bharosa.uio.default.userinfo.inputs.enum.mobile.maxlength

15

「携帯電話」フィールドのHTML入力の最大長

bharosa.uio.default.userinfo.inputs.enum.mobile.required

true

登録およびユーザー・プリファレンスにおける「携帯電話」フィールドの必須フラグ

bharosa.uio.default.userinfo.inputs.enum.mobile.order

1

「携帯電話」フィールドのページにおける順序

bharosa.uio.default.userinfo.inputs.enum.mobile.enabled

true

「携帯電話」列挙項目の有効フラグ

bharosa.uio.default.userinfo.inputs.enum.mobile.regex

\\D?(\\d{3})

\\D?\\D?

(\\d{3})\\D?(\\d{4})

「携帯電話」フィールドの検証用の正規表現

bharosa.uio.default.userinfo.inputs.enum.mobile.errorCode

otp.invalid.mobile

「携帯電話」エントリの検証が失敗した場合にエラー・メッセージを取得するためのエラー・コード

bharosa.uio.default.userinfo.inputs.enum.mobile.managerClass

com.bharosa.uio.manager.user.DefaultContactInfoManager

データ・ストレージから携帯電話を保存/取得するために使用するJavaクラス


15.9 OTPチャレンジを使用するためのポリシーおよびルールの構成

チャレンジ・チェックポイントのポリシーにより、ユーザーに表示されるチャレンジのタイプが決まります。

特定シナリオのユーザーに対してOTPチャレンジが実行されるルールを使用してポリシーを構成するには、次の手順を実行します。

  1. OAAM管理コンソールにログインします。

  2. ナビゲーション・ペインで、「ポリシー」をダブルクリックします。

  3. ポリシー検索ページで、「新規ポリシー」をクリックします。

    「新規ポリシー」ページが表示されます。「サマリー」タブで、認証後のセキュリティ・ポリシーを作成します。

  4. 「ポリシー名」にポリシーの名前を入力します。

  5. 「説明」に、ポリシーの説明を入力します。

  6. 「チェックポイント」「認証後」を選択します。

  7. 要件に応じてポリシー・ステータス、スコアリング・エンジンおよび重みを変更します。

  8. 「適用」をクリックします。

  9. 「OK」をクリックして、確認ダイアログを閉じます。

  10. 「ルール」タブをクリックします。

  11. ルールに関する一般的なサマリー情報を追加します。

  12. 条件タブで、「ユーザー: OTP失敗の確認」条件または他のOTP関連の条件を追加します。

  13. 「結果」タブで、アクション・グループに「OAAMチャレンジ」を指定します。

  14. ポリシーをすべてのユーザーにリンクします。

15.10 OTPのカスタマイズ

この項の内容は次のとおりです。

15.10.1 登録フィールドと検証のカスタマイズ

モバイル・フィールドの名前と説明をカスタマイズするには、次のプロパティをclient_resource_locale.propertiesに追加します。

表15-11 モバイル入力のカスタマイズ

プロパティ デフォルト値 説明

bharosa.uio.default.userinfo.inputs.enum.mobile.name

携帯電話

「携帯電話」フィールドの名前

bharosa.uio.default.userinfo.inputs.enum.mobile.description

携帯電話

「携帯電話」フィールドの説明


15.10.2 ご使用条件のカスタマイズ

ご使用条件をカスタマイズするには、次のプロパティを値とともにclient_resource_locale.propertiesに追加します。ご使用条件のデフォルト・メッセージは、client_resource_locale.propertiesの値によって構成されます。

表15-12 ご使用条件のメッセージ

プロパティ 説明

bharosa.uio.default.userinfo.inputs.enum.terms.name

[会社名またはサービス名をここに入力]のご使用条件に同意します。<a href="javascript:infoWindow('terms');">Terms & Conditions</a>および<a href="javascript:infoWindow('privacy');">Privacy Policy</a>をクリックすると全体が表示されます。

bharosa.uio.default.userinfo.inputs.enum.terms.description

メッセージおよびデータ・レートが適用されます。<br/>このプログラムに関して質問がある場合は、"HELP"を[コード/短縮コードをここに入力]に送信してください。<br/>プランを取り消すには、"STOP"を[コード/短縮コードをここに入力]にいつでも送信してください。<br/><br/>このサービスの追加情報は、<a href="" target="_blank">[情報URLをここに入力]</a>をご覧ください。<br/><br/><b>サポートされているキャリア:</b><br/>AT&T、Sprint、Nextel、Boost、Verizon Wireless、U.S. Cellular&reg;、T-Mobile&reg;、Cellular One Dobson、Cincinnati Bell、Alltel、Virgin Mobile USA、Cellular South、Unicel、CentennialおよびNtelos。


bharosa.uio.default.userinfo.inputs.enum.terms.nameの値には、「ご使用条件」および「プライバシ・ポリシー」に対するOAAMサーバーのポップアップ・メッセージを使用するプレースホルダ・リンクが含まれます。ポップアップのコンテンツのプロパティおよびリソース・キーは次のとおりです。

表15-13 ご使用条件およびプライバシ・ポリシーのポップアップ・メッセージ

プロパティ 説明

bharosa.uio.default.messages.enum.terms.name

ご使用条件

bharosa.uio.default.messages.enum.terms.description

ご使用条件のプレースホルダ・テキスト

bharosa.uio.default.messages.enum.privacy.name

プライバシ・ポリシー

bharosa.uio.default.messages.enum.privacy.description

プライバシ・ポリシーのプレースホルダ・テキスト


15.10.3 OTP登録ページのメッセージのカスタマイズ

登録ページのメッセージ・テキストをカスタマイズするには、これらのプロパティをclient_resource_locale.propertiesに追加します。

表15-14 登録ページのメッセージ・テキストのカスタマイズ

プロパティ デフォルト値

bharosa.uio.default.register.userinfo.title

OTP Anywhere登録

bharosa.uio.default.register.userinfo.message

お客様の保護のため、今後、当社がこの番号を使用してお客様の身元を確認できるよう携帯電話番号を入力してください。電話のテキスト・メッセージが有効になっていることをご確認ください。

bharosa.uio.default.register.userinfo.registerdevice.message

現在、安全なデバイスとして使用しているデバイスの登録を確認します:

bharosa.uio.default.register.userinfo.continue.button

続行

bharosa.uio.default.register.userinfo.decline.message

辞退されたお客様には再び登録をお願いすることはありません。

bharosa.uio.default.register.userinfo.decline.button

辞退


15.10.4 チャレンジ・ページのメッセージのカスタマイズ

チャレンジ・ページのメッセージ・テキストをカスタマイズするには、これらのプロパティをclient_resource_locale.propertiesに追加します。

表15-15 チャレンジ・ページのメッセージ・テキストのカスタマイズ

プロパティ デフォルト値

bharosa.uio.default.ChallengeSMS.message

お客様の保護のため、お客様の携帯電話にお送りしたコードを入力してください。コードが届いていない場合は、電話のテキスト・メッセージが有効になっていることを確認してから、下の再送信リンクをクリックしてください。

bharosa.uio.default.ChallengeSMS.registerdevice.message

現在、安全なデバイスとして使用しているデバイスの登録を確認します:

bharosa.uio.default.ChallengeSMS.continue.button

続行


15.10.5 OTPメッセージ・テキストのカスタマイズ

OTPメッセージ・テキストをカスタマイズするには、これらのプロパティをclient_resource_locale.propertiesに追加します。

表15-16 OTPメッセージ・テキストのカスタマイズ

プロパティ デフォルト値

bharosa.uio.default.ChallengeSMS.incorrect.message

OTPが正しくありません。再試行してください。

bharosa.uio.default.ChallengeSMS.message.subject

Oracle OTPコード

bharosa.uio.default.ChallengeSMS.message.body

Oracle SMS OTPコードは次のとおりです: {0}


15.11 ワンタイム・パスワード生成のカスタマイズ

プロパティを編集することによりワンタイム・パスワード生成を構成できます。OTPの生成では次のプロパティが使用されます。

# OTP pin generation config
bharosa.uio.default.otp.generate.code.length = 5
bharosa.uio.default.otp.generate.code.characters = 1234567890
 

デフォルトのOTPコードは、数字の0から9で構成される5文字になります(例: 44569)。

bharosa.uio.default.otp.generate.code.lengthは、OTPの長さを指定します。

bharosa.uio.default.otp.generate.code.charactersは、OTPの生成時に使用する文字を指定します。

次の例では、数字の0から9と文字のaからdを使用して4文字のOTPコードが生成されます(例: 0c6a)。

bharosa.uio.default.otp.generate.code.length = 4
bharosa.uio.default.otp.generate.code.characters = 1234567890abcd

15.12 ワンタイム・パスワードの有効期間のカスタマイズ

プロパティを編集することによりワンタイム・パスワードの有効期間を構成できます。

OTP SMSパスワードの有効期限を設定するには、次のプロパティを追加します。

bharosa.uio.default.challenge.type.enum.ChallengeSMS.otpexpirytimeMs

OTP電子メール・パスワードの有効期限を設定するには、次のプロパティを追加します。

bharosa.uio.default.challenge.type.enum.ChallengeEmail.otpexpirytimeMs to oaam_custom.properties

時間はミリ秒単位です。設定する有効期限がミリ秒単位でない場合は、変換する必要があります。たとえば、OTPの有効期限を7分に設定する場合は、このプロパティを420000 (7分)に設定する必要があります。

15.13 チャレンジ・タイプに使用するチャレンジ・デバイスの構成

デフォルトでは、使用されるチャレンジ・デバイスはルールを使用して構成されています。ルールはAuthentiPadチェックポイントの下に存在し、これにより、デバイスの目的に基づいて使用するデバイスのタイプを指定できます。

チャレンジ・タイプを使用するポリシーを作成または更新する手順は次のとおりです。

  1. 列挙rule.action.enumを指定する新しいルール・アクションMyChallengeを追加します。

  2. 新規作成されたアクションMyChallengeを戻すポリシーを作成して、チャレンジ・メソッドを使用します。

または、プロパティを使用してチャレンジ・デバイスを構成する場合、bharosa.uio.default.use.authentipad.checkpointfalseに設定して、AuthentiPadチェックポイントをバイパスできます。

チャレンジ・タイプで使用するデバイスを追加できます。

bharosa.uio.application.challengeType.authenticator.device=<value>

次の例では、チャレンジ・タイプ・キーのChallengeEmailChallengeSMSを使用してプロパティ名を作成しています。

bharosa.uio.default.ChallengeSMS.authenticator.device=DevicePinPad
bharosa.uio.default.ChallengeEmail.authenticator.device=DevicePinPad

使用可能なチャレンジ・デバイス値はDeviceKeyPadFullDeviceKeyPadAlphaDeviceTextPadDeviceQuestionPadDevicePinPadおよびDeviceHTMLControlです。

表15-17 認証デバイス・タイプ

プロパティ 説明

なし

HTMLページまたは認証パッドはありません。

DeviceKeyPadFull

KeyPadを使用してユーザーにチャレンジします。

DeviceKeyPadAlpha

英数字KeyPad(数字と文字のみで特殊文字は含みません)を使用して、ユーザーにチャレンジします。

DeviceTextPad

TextPadを使用してユーザーにチャレンジします。

DeviceQuestionPad

QuestionPadを使用してユーザーにチャレンジします。

DevicePinPad

PinPadを使用してユーザーにチャレンジします。

DeviceHTMLControl

認証パッドのかわりにHTMLページを使用して、ユーザーにチャレンジします。


15.14 チャレンジ・タイプの作業を実行するSMSプロセッサの登録

チャレンジ・タイプ列挙は、チャレンジ・タイプを(そのチャレンジ・タイプの関連作業を実行するために必要な)Javaコードに関連付けるのに使用できます。チャレンジ・タイプID (ChallengeEmail)は、チャレンジ・タイプを使用する際にルールにより返されるルール・アクションと一致している必要があります。「チャネル」は通常、OTPをユーザーに送信するために使用される配信チャネル(電子メール、SMSまたはIM)です。

表15-18 チャレンジ・タイプの列挙

プロパティ 説明

available

チャレンジ・タイプが使用可能(サービスが準備され構成されている)かどうか。OTPチャレンジ・タイプを有効/無効にするには、可用性フラグを設定する必要があります。

processor

このタイプのチャレンジを処理するためのJavaクラス。

requiredInfo

登録入力列挙からの入力のカンマ区切りリスト。


表15-19に、SMSチャレンジ・プロセッサを登録するプロパティと、サービスを使用可能(または使用不可)とマークするプロパティを示します。

表15-19 SMSチャレンジ・プロセッサを登録するプロパティ

プロパティ デフォルト値 説明

bharosa.uio.default.challenge.type.enum.ChallengeSMS

2

SMSチャレンジの列挙値

bharosa.uio.default.challenge.type.enum.ChallengeSMS.name

SMSチャレンジ

SMSチャレンジ・タイプの名前

bharosa.uio.default.challenge.type.enum.ChallengeSMS.description

SMSチャレンジ

SMSチャレンジ・タイプの説明

bharosa.uio.default.challenge.type.enum.ChallengeSMS.processor

com.bharosa.uio.processor.challenge.SMSUMSOTPChallengeProcessor

SMSチャレンジ・タイプのプロセッサ・クラス

このタイプのチャレンジを処理するためのJavaクラスを指定します。チャレンジ・メカニズムはJavaクラスを通じてカスタマイズ可能です。

bharosa.uio.default.challenge.type.enum.ChallengeSMS.requiredInfo

mobile、terms

SMSチャレンジ・タイプでユーザーにチャレンジするための必須フィールド

登録入力列挙からの入力のカンマ区切りリスト

bharosa.uio.default.challenge.type.enum.ChallengeSMS.displayedInfo

mobile


bharosa.uio.default.challenge.type.enum.ChallengeSMS.available

false

SMSチャレンジ・タイプの可用性フラグ

チャレンジ・タイプが使用可能(サービスが準備され構成されている)かどうかを指定します。OTPチャレンジ・タイプを有効/無効にするには、可用性フラグを設定する必要があります。

bharosa.uio.default.challenge.type.enum.ChallengeSMS.otp

true

SMSチャレンジ・タイプのOTPフラグ

bharosa.uio.default.challenge.type.enum.ChallengeSMS.otpexpirytimeMs

300000

OTP SMSパスワード有効期限を設定します。時間はミリ秒単位です。値がミリ秒単位で指定されていない場合は、変換する必要があります。たとえば、OTPの有効期限を7分に設定する場合は、このプロパティを420000 (7分)に設定する必要があります。

bharosa.uio.default.challenge.type.enum.ChallengeSMS.htmlLabel

SMSコード

HTML (authentipadではない)がユーザー入力に使用される際に使用されるラベル。リソース・バンドル値。

bharosa.uio.default.challenge.type.enum.ChallengeSMS.htmlInputType

text

HTML (authentipadではない)がユーザー入力に使用される際に使用される入力のタイプ。可能な値は"text"または"password"です。


15.15 OTP Anywhereのデータ・ストレージのカスタマイズ

この項では、OTP Anywhereのデータ・ストレージをカスタマイズする方法について説明します。OTP Anywhereをカスタマイズするには、com.bharosa.uio.manager.user.UserDataManagerIntfインタフェースを実装します。

15.15.1 com.bharosa.uio.manager.user.UserDataManagerIntf

カスタマイズで使用するメソッドは、次のとおりです。

  • public String getUserData(UIOSessionData sessionData, String key);

  • public void setUserData(UIOSessionData sessionData, String key, String value);

15.15.2 デフォルト実装: com.bharosa.uio.manager.user.DefaultContactInfoManager

デフォルト実装はインタフェース上に展開して、すべてのgetおよびsetを次の2つのアイテム、UserDataValueおよびUserDataFlagに分解します。UserDataFlagは、値が設定されていることを追跡するか、値をソフト・リセットするために使用されます。OAAMは、ルールを使用して、ユーザーが指定のアイテムに対して登録されているかどうか、およびOAAMデータベース内のUserDataFlagを確認します。UserDataValueは、ユーザーが入力した実際のデータ要素です。デフォルト実装では、これはOAAMデータベースにも格納されますが、DefaultContactInfoManagerクラスを拡張し、UserDataValueのメソッド(getUserDataValueおよびsetUserDataValue)をオーバーライドすることにより、必要に応じてデータを外部の場所に格納することもできます。

メソッド

public class DefaultContactInfoManager implements UserDataManagerIntf {
 
  public String getUserData(UIOSessionData sessionData, String key){
    if (getUserDataFlag(sessionData, key)){
      return getUserDataValue(sessionData, key);
     }
 
     return null;
     }
 
  public void setUserData(UIOSessionData sessionData, String key, String value){
    setUserDataValue(sessionData, key, value);
    setUserDataFlag(sessionData, key, value);
  }
 
    protected void setUserDataValue(UIOSessionData sessionData, 
       String key, String value){
    VCryptAuthUser clientUser = sessionData.getClientAuthUser();
    if (clientUser != null) {
     clientUser.setUserData(BharosaConfig.get("oaam.otp.contact.info.prefix", 
        "otpContactInfo_") + key, value);
     }
   }
 
   protected String getUserDataValue(UIOSessionData sessionData, String key) {
    VCryptAuthUser clientUser = sessionData.getClientAuthUser();
    if (clientUser != null) {
      return  
clientUser.getUserData(BharosaConfig.get("oaam.otp.contact.info.prefix",
"otpContactInfo_") + key);

     }
 
     return null;
   }
 
 
   protected void setUserDataFlag(UIOSessionData sessionData, 
        String key, String value){
     VCryptAuthUser clientUser = sessionData.getClientAuthUser();
     if (clientUser != null) {
       if (StringUtil.isEmpty(value)) {
clientUser.setUserData(BharosaConfig.get("oaam.otp.contact.info.flag.prefix", 
"otpContactInfoFlag_") + key, null);
      } else {
clientUser.setUserData(BharosaConfig.get("oaam.otp.contact.info.flag.prefix", 
"otpContactInfoFlag_") + key, "true");
       }
     }
   }
 
   protected boolean getUserDataFlag(UIOSessionData sessionData, String key) {
    VCryptAuthUser clientUser = sessionData.getClientAuthUser();
    if (clientUser != null) {
       return 
           Boolean.valueOf(clientUser.getUserData(BharosaConfig.get
              ("oaam.otp.contact.info.flag.prefix", 
                 "otpContactInfoFlag_") + key));
     }
 
     return false;
   }
 
 
}
 

15.15.3 カスタム実装の推奨事項

ベース実装クラスDefaultContactInfoManagerを拡張し、メソッドsetUserDataValueおよびgetUserDataValueをオーバーライドして、実装用の適切な場所にデータ値を格納します。

デフォルト実装のsetUserDataFlagおよびgetUserDataFlagを所定の場所に置いたままにして、OAAMでユーザーに設定されたデータを適切に追跡できるようにします。

15.15.4 プロパティの構成

OTP Anywhereの登録フィールドは、ユーザー定義列挙bharosa.uio.default.userinfo.inputs.enumによって定義されます。

各要素には、登録データの格納に使用されるクラスを指定するmanagerClassプロパティが割り当てられています。

たとえば、デフォルトの携帯電話要素は次のようになります。

bharosa.uio.default.userinfo.inputs.enum=Enum for Contact information
bharosa.uio.default.userinfo.inputs.enum.mobile=0
bharosa.uio.default.userinfo.inputs.enum.mobile.name=Mobile Phone
bharosa.uio.default.userinfo.inputs.enum.mobile.description=Mobile Phone
bharosa.uio.default.userinfo.inputs.enum.mobile.inputname=cellnumber
bharosa.uio.default.userinfo.inputs.enum.mobile.inputtype=text
bharosa.uio.default.userinfo.inputs.enum.mobile.maxlength=16
bharosa.uio.default.userinfo.inputs.enum.mobile.required=true
bharosa.uio.default.userinfo.inputs.enum.mobile.order=4
bharosa.uio.default.userinfo.inputs.enum.mobile.enabled=true
bharosa.uio.default.userinfo.inputs.enum.mobile.regex=
\\d{1}\\D?(\\d{3})\\D?\\D?(\\d{3})\\D?(\\d{4})
bharosa.uio.default.userinfo.inputs.enum.mobile.errorCode=otp.invalid.mobile
bharosa.uio.default.userinfo.inputs.enum.mobile.managerClass=
com.bharosa.uio.manager.user.DefaultContactInfoManager

ここに示すように、デフォルトの携帯電話定義ではDefaultContactInfoManagerクラスを使用してデータを管理しています。カスタム実装が必要な場合は、OAAM管理で(またはOAAM拡張共有ライブラリを使用して)カスタム・クラスを使用するように、managerClass属性の値を更新できます。

15.16 構成例

この項の内容は次のとおりです。

15.16.1 追加の登録フィールド定義の例

表15-20に、追加の登録フィールド定義を示します。

表15-20 連絡先情報入力

プロパティ 説明

inputname

HTML形式の入力フィールドに使用される名前。

inputtype

テキスト入力またはパスワード入力用に設定されます。

maxlength

ユーザー入力の最大長。

required

フィールドが登録ページで必須である場合に設定されます。

order

ユーザー・インタフェースに表示される順序。

regex

このフィールドのユーザー入力を検証するために使用される正規表現。

errorCode

検証エラー・メッセージ(bharosa.uio.application_ID.error.errorCode)を参照するために使用されるエラー・コード

managerClass

com.bharosa.uio.manager.user.UserDataManagerIntfを実装するJavaクラス(Oracle Adaptive Access Managerデータベースでデータが盗難された場合、このプロパティはcom.bharosa.uio.manager.user.DefaultContactInfoManagerに設定される必要があります)。


15.16.1.1 電子メール入力

次に、オーセンティケータのOTP登録ページで電子メール登録を定義する列挙の例を示します。

表15-21 電子メール入力

プロパティ デフォルト値 説明

bharosa.uio.default.userinfo.inputs.enum.email

1

「電子メール・アドレス」の列挙値

bharosa.uio.default.userinfo.inputs.enum.email.name

電子メール・アドレス

「電子メール・アドレス」フィールドの名前

bharosa.uio.default.userinfo.inputs.enum.email.description

電子メール・アドレス

「電子メール・アドレス」フィールドの説明

bharosa.uio.default.userinfo.inputs.enum.email.inputname

電子メール

「電子メール・アドレス」フィールドのHTML入力名

bharosa.uio.default.userinfo.inputs.enum.email.inputtype

text

「電子メール・アドレス」フィールドのHTML入力タイプ

bharosa.uio.default.userinfo.inputs.enum.email.maxlength

40

「電子メール・アドレス」フィールドのHTML入力の最大長

bharosa.uio.default.userinfo.inputs.enum.email.required

true

登録およびユーザー・プリファレンスにおける「電子メール・アドレス」フィールドの必須フラグ

bharosa.uio.default.userinfo.inputs.enum.email.order

2

「電子メール・アドレス」フィールドのページにおける順序

bharosa.uio.default.userinfo.inputs.enum.email.enabled

false

「電子メール・アドレス」列挙項目の有効フラグ

bharosa.uio.default.userinfo.inputs.enum.email.regex

.+@[a-zA-Z_]+?\\.[a-zA-Z]{2,3}

「電子メール・アドレス」フィールドの検証用の正規表現

bharosa.uio.default.userinfo.inputs.enum.email.errorCode

otp.invalid.email

「電子メール・アドレス」エントリの検証が失敗した場合にエラー・メッセージを取得するためのエラー・コード

bharosa.uio.default.userinfo.inputs.enum.email.managerClass

com.bharosa.uio.manager.user.DefaultContactInfoManager

データ・ストレージから電子メール・アドレスを保存/取得するために使用するJavaクラス


15.16.1.2 電話入力

次に、オーセンティケータのOTP登録ページで電話登録を定義する列挙の例を示します。

表15-22 電話入力

プロパティ デフォルト値 説明

bharosa.uio.default.userinfo.inputs.enum.phone

2

電話番号の列挙値

bharosa.uio.default.userinfo.inputs.enum.phone.name

電話番号

電話番号フィールドの名前

bharosa.uio.default.userinfo.inputs.enum.phone.description

電話番号

電話番号フィールドの説明

bharosa.uio.default.userinfo.inputs.enum.phone.inputname

phone

電話番号フィールドのHTML入力名

bharosa.uio.default.userinfo.inputs.enum.phone.inputtype

text

電話番号フィールドのHTML入力タイプ

bharosa.uio.default.userinfo.inputs.enum.phone.maxlength

15

電話番号フィールドのHTML入力の最大長

bharosa.uio.default.userinfo.inputs.enum.phone.required

true

登録およびユーザー・プリファレンスにおける電話番号フィールドの必須フラグ

bharosa.uio.default.userinfo.inputs.enum.phone.order

3

電話番号フィールドのページ上の順序

bharosa.uio.default.userinfo.inputs.enum.phone.enabled

false

電話番号列挙アイテムの有効化されたフラグ

bharosa.uio.default.userinfo.inputs.enum.phone.regex

\\D?(\\d{3})\\D?\\D?(\\d{3})\\D?(\\d{4})

電話番号フィールドの検証用の正規表現

bharosa.uio.default.userinfo.inputs.enum.phone.errorCode

otp.invalid.phone

電話番号エントリの検証が失敗した場合にエラー・メッセージを取得するためのエラー・コード

bharosa.uio.default.userinfo.inputs.enum.phone.managerClass

com.bharosa.uio.manager.user.DefaultContactInfoManager

データ・ストレージへの電話番号の保存またはデータ・ストレージからの電話番号の取得に使用するJavaクラス


15.16.1.3 例: 携帯電話のかわりに電子メール・アドレスのエントリに値を表示するOTP登録ページ

登録に関して電子メールのエントリ情報のみを表示し、携帯電話のエントリ情報を無効にするには、次のように設定します。

bharosa.uio.default.userinfo.inputs.enum.email.enabled=true

bharosa.uio.default.userinfo.inputs.enum.mobile.enabled=false
Enabling the email field will require a server restart.

15.16.1.4 IM入力

次に、オーセンティケータのOTP登録ページでIM登録を定義する列挙の例を示します。

表15-23 IM入力

プロパティ デフォルト値 説明

bharosa.uio.default.userinfo.inputs.enum.im

3

インスタント・メッセージの列挙値

bharosa.uio.default.userinfo.inputs.enum.im.name

インスタント・メッセージ

インスタント・メッセージ・フィールドの名前

bharosa.uio.default.userinfo.inputs.enum.im.description

インスタント・メッセージ

インスタント・メッセージ・フィールドの説明

bharosa.uio.default.userinfo.inputs.enum.im.inputname

im

インスタント・メッセージ・フィールドのHTML入力名

bharosa.uio.default.userinfo.inputs.enum.im.inputtype

text

インスタント・メッセージ・フィールドのHTML入力タイプ

bharosa.uio.default.userinfo.inputs.enum.im.maxlength

15

インスタント・メッセージ・フィールドのHTML入力の最大長

bharosa.uio.default.userinfo.inputs.enum.im.required

true

登録およびユーザー・プリファレンスにおけるインスタント・メッセージ・フィールドの必須フラグ

bharosa.uio.default.userinfo.inputs.enum.im.order

4

インスタント・メッセージ・フィールドのページ上の順序

bharosa.uio.default.userinfo.inputs.enum.im.enabled

false

インスタント・メッセージ列挙アイテムの有効化されたフラグ

bharosa.uio.default.userinfo.inputs.enum.im.regex


インスタント・メッセージ・フィールドの検証用の正規表現

bharosa.uio.default.userinfo.inputs.enum.im.errorCode

otp.invalid.im

インスタント・メッセージのエントリの検証が失敗した場合にエラー・メッセージを取得するためのエラー・コード

bharosa.uio.default.userinfo.inputs.enum.im.managerClass

com.bharosa.uio.manager.user.DefaultContactInfoManager

データ・ストレージへのインスタント・メッセージの保存またはデータ・ストレージからのインスタント・メッセージの取得に使用するJavaクラス


15.16.2 追加のチャレンジ・メッセージの例

チャレンジ・メッセージ・カスタマイズのその他の例は、以降の項に示します。これらのプロパティをclient_resource_locale.propertiesに追加する必要があります。

15.16.2.1 OTP電子メール・メッセージのカスタマイズ

表15-24に、OTP電子メール・メッセージのプロパティを示します。カスタマイズされたOTP電子メール・メッセージのプロパティbharosa.uio.default.ChallengeEmail.message.subjectおよびbharosa.uio.default.ChallengeEmail.message.bodyを、client_resource.propertiesに追加する必要があります。プロパティbharosa.uio.default.ChallengeEmail.message.from.addressoaam_custom.propertiesに追加する必要があります。

表15-24 OTP電子メール・メッセージのカスタマイズ

プロパティ デフォルト値 説明

bharosa.uio.default.ChallengeEmail.message.from.name

Oracle ASAテスト

アドレスからの電子メール・メッセージ

bharosa.uio.default.ChallengeEmail.message.subject

Oracle OTPコード

電子メール・メッセージの件名

bharosa.uio.default.ChallengeEmail.message.body

このOracle電子メールのOTPコード: {0}

電子メール・メッセージの本体


15.16.2.2 OTP IMメッセージのカスタマイズ

表15-25に、OTP IMメッセージのプロパティを示します。

表15-25 OTP IMメッセージのカスタマイズ

プロパティ デフォルト値 説明

bharosa.uio.default.ChallengeIM.message.from.name

Oracle ASAテスト

名前からのIMメッセージ

bharosa.uio.default.ChallengeIM.message.subject

Oracle OTPコード

IMメッセージの件名

bharosa.uio.default.ChallengeIM.message.body

このOracle IMのOTPコード: {0}

IMメッセージの本体


15.16.3 追加のプロセッサ登録例

表15-26に、追加のプロセッサ登録プロパティを示します。

表15-26 チャレンジ・タイプの列挙

プロパティ 説明

available

チャレンジ・タイプが使用可能(サービスが準備され構成されている)かどうか。OTPチャレンジ・タイプを有効/無効にするには、可用性フラグを設定する必要があります。

processor

このタイプのチャレンジを処理するためのJavaクラス。

requiredInfo

登録入力列挙からの入力のカンマ区切りリスト。


15.16.3.1 電子メール・チャレンジ・プロセッサの登録

表15-27に、電子メール・チャレンジ・プロセッサを登録するプロパティと、サービスを使用可能(または使用不可)としてマークするプロパティを示します。

表15-27 電子メール・チャレンジ・プロセッサを登録するプロパティ

プロパティ デフォルト値 説明

bharosa.uio.default.challenge.type.enum.ChallengeEmail

1

電子メール・チャレンジの列挙値

bharosa.uio.default.challenge.type.enum.ChallengeEmail.name

電子メール・チャレンジ

電子メール・チャレンジ・タイプの名前

bharosa.uio.default.challenge.type.enum.ChallengeEmail.description

電子メール・チャレンジ

電子メール・チャレンジ・タイプの説明

bharosa.uio.default.challenge.type.enum.ChallengeEmail.processor

com.bharosa.uio.processor.challenge.EmailUMSOTPChallengeProcessor

電子メール・チャレンジ・タイプのプロセッサ・クラス

このタイプのチャレンジを処理するためのJavaクラスを指定します。チャレンジ・メカニズムはJavaクラスを通じてカスタマイズ可能です。

bharosa.uio.default.challenge.type.enum.ChallengeEmail.requiredInfo

email

電子メール・チャレンジ・タイプでユーザーにチャレンジするための必須フィールド

登録入力列挙からの入力のカンマ区切りリスト

bharosa.uio.default.challenge.type.enum.ChallengeEmail.displayedInfo

email


bharosa.uio.default.challenge.type.enum.ChallengeEmail.available

false

電子メール・チャレンジ・タイプの可用性フラグ

チャレンジ・タイプが使用可能(サービスが準備され構成されている)かどうかを指定します。OTPチャレンジ・タイプを有効/無効にするには、可用性フラグを設定する必要があります。

bharosa.uio.default.challenge.type.enum.ChallengeEmail.enabled

true


bharosa.uio.default.challenge.type.enum.ChallengeEmail.otp

true

電子メール・チャレンジ・タイプのOTPフラグ

bharosa.uio.default.challenge.type.enum.ChallengeEmail.otpexpirytimeMs

300000

OTP電子メール・パスワード有効期限を設定します。時間はミリ秒単位です。値がミリ秒単位で指定されていない場合は、変換する必要があります。たとえば、OTPの有効期限を7分に設定する場合は、このプロパティを420000 (7分)に設定する必要があります。

bharosa.uio.default.challenge.type.enum.ChallengeEmail.htmlLabel

電子メール・コード

HTML (authentipadではない)がユーザー入力に使用される際に使用されるラベル。リソース・バンドル値。

bharosa.uio.default.challenge.type.enum.ChallengeEmail.htmlInputType

text

HTML (authentipadではない)がユーザー入力に使用される際に使用される入力のタイプ。可能な値は"text"または"password"です。


15.16.3.2 IMチャレンジ・プロセッサの登録

表15-28に、IMチャレンジ・プロセッサを登録するプロパティと、サービスを使用可能(または使用不可)としてマークするプロパティを示します。

表15-28 IMチャレンジ・プロセッサを登録するプロパティ

プロパティ デフォルト値 説明

bharosa.uio.default.challenge.type.enum.ChallengeIM

3

インスタント・メッセージのチャレンジ列挙値

bharosa.uio.default.challenge.type.enum.ChallengeIM.name

IMチャレンジ

インスタント・メッセージのチャレンジ・タイプの名前

bharosa.uio.default.challenge.type.enum.ChallengeIM.description

インスタント・メッセージ・チャレンジ

インスタント・メッセージのチャレンジ・タイプの説明

bharosa.uio.default.challenge.type.enum.ChallengeIM.processor

com.bharosa.uio.processor.challenge.IMUMSOTPChallengeProcessor

インスタント・メッセージのチャレンジ・タイプのプロセッサ・クラス

bharosa.uio.default.challenge.type.enum.ChallengeIM.requiredInfo

im

インスタント・メッセージのチャレンジ・タイプでユーザーにチャレンジするための必須フィールド

bharosa.uio.default.challenge.type.enum.ChallengeIM.displayedInfo

im


bharosa.uio.default.challenge.type.enum.ChallengeIM.available

false

インスタント・メッセージのチャレンジ・タイプの可用性フラグ

bharosa.uio.default.challenge.type.enum.ChallengeIM.otp

true

インスタント・メッセージのチャレンジ・タイプのOTPフラグ

bharosa.uio.default.challenge.type.enum.ChallengeIM.otpexpirytimeMs

300000


bharosa.uio.default.challenge.type.enum.ChallengeIM.htmlLabel

IMコード


bharosa.uio.default.challenge.type.enum.ChallengeIM.htmlInputType

text



15.17 チャレンジのユースケース

チャレンジ・シナリオの例は、次のとおりです。

  1. Oracle Adaptive Access Managerサーバーにより、ユーザーに対してユーザー名ページが表示されます。

  2. ユーザーは、ユーザー名ページでユーザー名を送信します。

  3. Oracle Adaptive Access Managerにより、ユーザー・デバイスのフィンガープリントが処理され、ユーザーがパスワード・ページに進むことを許可するかどうかを決定する認証前ルールが実行されます。

  4. ユーザーは、パスワード・ページに進むことが許可されて、自分のパスワードを入力します。

  5. OAAMポリシーにより、ユーザーにチャレンジする必要があることが示されます。

  6. チャレンジ・チェックポイントが実行され、使用するチャレンジのタイプ(KBA、電子メール、SMSなど)が決定されます。SMSチャレンジが返された場合は、SMSチャレンジ・プロセッサがロードされます。このSMSチャレンジ・プロセッサを使用してOTPが生成され、そのOTPがSMSを通じてユーザーに配信されます。

  7. SMSが送信されると、ユーザーのOTPがSMSでユーザーに送信されたことを示すチャレンジ・ページが表示されます。

  8. アプリケーションでの処理を継続するために、ユーザーは正しいOTPを入力してからログイン・フローを完了します。

生成されてユーザーに送信されたOTPは、各HTTPセッションで1回のみ入力可能です。ユーザーのHTTPセッションが期限切れになると、ユーザーが後続のセッションで再度チャレンジされた場合に新規OTPが生成されて送信されます。