Oracle® Fusion MiddlewareOracle Adaptive Access Manager開発者ガイド 11gリリース2 (11.1.2.3.0) E67356-01 |
|
前 |
次 |
OTP Anywhereは、二次リスク・ベースのチャレンジ・ソリューションであり、構成済の帯域外チャネルを経由してエンド・ユーザーに送信されるサーバー生成のワンタイム・パスワードで構成されます。
この章では、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がサポートされています。
この項では、OTP実装に関連するキー定義、頭字語、略語について説明します。
表16-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を使用します。 |
チャレンジ・プロセッサ |
チャレンジ・プロセッサは、 |
チャレンジ・タイプ |
チャネルは、OTPをユーザーに送信するために使用される配信チャネル(電子メール、SMSまたはIM)です。チャレンジ・タイプは、ユーザーにチャレンジするためにOTPで使用しているチャネルです。チャレンジ・タイプを構成すれば、必要なチャレンジの処理で生じる差異に対応できます。チャレンジ・タイプの処理として、チャレンジに使用する機密情報の生成からユーザーへの機密情報の配信、および最終的なユーザー入力の検証にいたるまで、チャレンジ・タイプのあらゆる作業が考えられます。これらの主要プロセス(生成、送信、および検証)では、チャレンジのタイプ別に若干異なるコードが必要になる場合があります。 |
チャレンジ・シナリオの例は、次のとおりです。
Oracle Adaptive Access Managerサーバーにより、ユーザーに対してユーザー名ページが表示されます。
ユーザーは、ユーザー名ページでユーザー名を送信します。
Oracle Adaptive Access Managerにより、ユーザー・デバイスのフィンガープリントが処理され、ユーザーがパスワード・ページに進むことを許可するかどうかを決定する認証前ルールが実行されます。
ユーザーは、パスワード・ページに進むことが許可されて、自分のパスワードを入力します。
OAAMポリシーにより、ユーザーにチャレンジする必要があることが示されます。
チャレンジ・チェックポイントが実行され、使用するチャレンジのタイプ(KBA、電子メール、SMSなど)が決定されます。SMSチャレンジが返された場合は、SMSチャレンジ・プロセッサがロードされます。このSMSチャレンジ・プロセッサを使用してOTPが生成され、そのOTPがSMSを通じてユーザーに配信されます。
SMSが送信されると、ユーザーのOTPがSMSでユーザーに送信されたことを示すチャレンジ・ページが表示されます。
アプリケーションでの処理を継続するために、ユーザーは正しいOTPを入力してからログイン・フローを完了します。
生成されてユーザーに送信されたOTPは、各HTTPセッションで1回のみ入力可能です。ユーザーのHTTPセッションが期限切れになると、ユーザーが後続のセッションで再度チャレンジされた場合に新規OTPが生成されて送信されます。
配信方法としてOracle User Messaging Service (UMS)を使用するOTPは、OAAMサーバーの標準機能です。この項では、この機能の実装に必要な手順の概要について説明します。
OAAMサーバー・インタフェースのカスタマイズ手順に従って、カスタマイズされたJARファイルとその他のファイルを拡張共有ライブラリに追加します。OAAMサーバー・インタフェースのカスタマイズの詳細は、第7章「OAAM拡張共有ライブラリの使用によるOAAMのカスタマイズ」を参照してください。
表16-2 OTPの設定タスク
番号 | タスク |
---|---|
1 |
|
2 |
Oracle User Messaging Serviceドライバの構成 |
3 |
|
4 |
|
5 |
Oracle User Messaging Serviceの統合 |
6 |
|
7 |
|
8 |
|
9 |
|
10 |
|
11 |
|
12 |
|
13 |
|
14 |
|
15 |
複数のUMSサーバーに接続してOTPを送信するためのOAAMサーバーの構成 |
Oracle User Messaging Service (UMS)とOTP実装は、OAAMサーバーのチャレンジ・プロセス・フレームワークを使用してOAAMサーバー・ログイン、チャレンジ、および登録の各フローに統合されています。ログイン、チャレンジ、登録の各フローの詳細は、第2章「Oracle Adaptive Access Managerのネイティブ統合」を参照してください。
アプリケーションにOTPを構成する前に、次の前提条件が満たされていることを確認してください。
注意: カスタムOAAM拡張のデプロイに精通している必要があります。Oracle Adaptive Access Managerは、カスタマイズされたJARファイルとその他のファイルを拡張共有ライブラリに追加してカスタマイズされている必要があります。 カスタマイズされたJARファイルとその他のファイルの追加の詳細は、第7章「OAAM拡張共有ライブラリの使用によるOAAMのカスタマイズ」を参照してください。 |
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インストレーション・ガイド』を参照してください。
User Messaging Serviceには、それぞれ特定のチャネルのトラフィックを処理するドライバがいくつか含まれています。ドライバはチャネルを管理します。メッセージの送信元である適切な配信サーバーおよびプロトコルに対してこれを構成する必要があります。ドライバを構成するには、『Oracle Fusion Middleware Oracle SOA SuiteおよびOracle Business Process Management Suite管理者ガイド』のUser Messaging Serviceドライバの構成に関する項の手順に従います。
『Oracle Fusion Middleware Oracle SOA SuiteおよびOracle Business Process Management Suite管理者ガイド』の電子メール・ドライバの構成に関する項の説明に従って、電子メール・ドライバをSMTPサーバーに構成します。リモート・ゲートウェイに接続するためのパラメータ値を指定する必要があります。
表16-3 SMTPサーバーへの接続
パラメータ | 説明 |
---|---|
OutgoingMailServer |
電子メールの送信が必要な場合は必須です。例: |
OutgoingMailServerPort |
SMTPサーバーのポート番号。 |
OutgoingMailServerSecurity |
使用可能な値はTLSとSSLです。 |
OutgoingDefaultFromAddress(オプション) |
電子メール・メッセージの送信者として指定される電子メールのアドレス。 |
OutgoingUsername |
電子メールの送信元であるユーザー・アカウント。 |
OutgoingPassword |
アカウントのパスワード(暗号化形式で格納されています)。 |
「適用」を押します。これらの設定を有効にするには、ドライバを再起動する必要があります。
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ドライバを構成します。ドライバのゲートウェイ・ベンダーに接続するためのパラメータ値を指定する必要があります。
表16-4 ベンダーへの接続
パラメータ | 説明 |
---|---|
SmsAccountId |
SMS-CのアカウントID。これはベンダー・アカウントIDであり、ベンダーから取得する必要があります。 |
SmsServerHost |
SMS-Cサーバーの名前(またはIPアドレス)。 |
TransmitterSystemPassword |
送信側システムのパスワード。パスワードのタイプ(「間接パスワード、新規のユーザーの作成」、「間接パスワード、既存のユーザーの使用」、「クリアテキスト・パスワードの使用」から選択)とパスワードが含まれています。これは、ベンダー・アカウントIDに対応するパスワードです。 |
TransmitterSystemType |
送信側システムのタイプ。デフォルトは |
ReceiverSystemId |
メッセージの受信に使用するアカウントID。 |
ReceiverSystemType |
受信側システムのタイプ。デフォルトは |
ServerTransmitterPort |
送信側サーバーのTCPポート番号。 |
ServerReceiverPort |
受信側サーバーのTCPポート番号。 |
DefaultEncoding |
SMPPドライバのデフォルトのエンコーディング。デフォルトはIA5です。ドロップダウン・リストから「IA5」、「UCS2」または「GSM_DEFAULT」を選択します。 |
DefaultSenderAddress |
デフォルトの送信者アドレス。 |
パラメータ値を入力したら、「適用」を押します。これらの設定を有効にするには、ドライバを再起動する必要があります。
登録フローとユーザー・プリファレンスを有効化するには、次のプロパティをtrue
に設定します。
表16-5 OTPプロファイル登録とプリファレンス設定の有効化
プロパティ | 説明 |
---|---|
bharosa.uio.default.register.userinfo.enabled |
OTPチャネルが有効化されていて登録が必要な場合、このプロパティをtrueに設定すると、プロファイル登録ページが有効になります。 |
bharosa.uio.default.userpreferences.userinfo.enabled |
OTPチャネルが有効化されていてプリファレンス設定が許可されている場合、このプロパティをtrueに設定すると、ユーザーはプリファレンスを設定できます。 「ユーザー・プリファレンス」ページを使用して、ユーザーは、イメージ/フレーズ、チャレンジ質問の変更、デバイスの登録解除およびOTPプロファイルの更新を実行できます。 |
OAAM管理コンソールにログインします。
ナビゲーション・ペインで、「環境」ノードの下の「プロパティ」をダブルクリックします。プロパティ検索ページが表示されます。
「名前」
フィールドにbharosa.uio.default.register.userinfo.enabledと入力し、「検索」をクリックします。
「検索結果」セクションでプロパティをクリックして選択し、値をtrue
に変更して「保存」をクリックします。
「名前」
フィールドにbharosa.uio.default.userpreferences.userinfo.enabledと入力し、「検索」をクリックします。
「検索結果」セクションでプロパティをクリックして選択し、値をtrue
に変更して「保存」をクリックします。
チャレンジ・タイプを有効化するには、適切なプロパティをtrue
に設定します。プロパティをtrue
に設定することにより、ポリシーは、チャレンジ・タイプ(電子メール、SMS、またはIM)を介し、OTPを使用してチャレンジできるようになります。登録フローで電子メール、SMS、またはIMのページが表示されます。
チャレンジ・タイプを、そのチャレンジ・タイプの関連作業を実行するために必要なJavaコードに関連付ける必要があります。チャレンジ・タイプID (ChallengeEmail)は、チャレンジ・タイプを使用する際にルールにより返されるルール・アクションと一致している必要があります。
表16-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 |
インスタント・メッセージのチャレンジ・タイプの可用性フラグ |
Oracle User Messaging Service (UMS)サーバーのURLと資格証明用に設定するプロパティを、表16-7に示します。これらのプロパティは、OAAM管理でプロパティ・エディタを使用して編集できます。注意: エンド・ポイントは、OAAMでOracle User Messaging Serviceへのコール送信に使用するWebサービスURLです。
表16-7 Oracle User Messaging Service ServerのURLと資格証明
プロパティ | デフォルト値 | 説明 |
---|---|---|
bharosa.uio.default.ums.integration.webservice |
UMSサーバーのWebサービスURL
|
|
bharosa.uio.default.ums.integration.parlayx.endpoint |
UMSサーバーのParlayXエンドポイントURL
|
|
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送信元アドレス 注意: 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サーバーのプロパティ設定後に、アプリケーションを再起動してください。
登録ページの設定には、次のタスクが含まれます。
オプトアウト機能はデフォルトでは無効になっています。ユーザーに対してオプトアウトを有効にするには、このプロパティをtrue
に設定します。
表16-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に登録されます。
OTP登録ページの「ご使用条件」チェック・ボックスおよびフィールドを構成するには、「ご使用条件」プロパティをoaam_custom.properties
に追加します。
表16-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
に追加します。
表16-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}) OAAM管理で構成する場合: \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クラス |
チャレンジ・チェックポイントのポリシーにより、ユーザーに表示されるチャレンジのタイプが決まります。
特定シナリオのユーザーに対してOTPチャレンジが実行されるルールを使用してポリシーを構成するには、次の手順を実行します。
OAAM管理コンソールにログインします。
ナビゲーション・ペインで、「ポリシー」をダブルクリックします。
ポリシー検索ページで、「新規ポリシー」をクリックします。
「新規ポリシー」ページが表示されます。「サマリー」タブで、認証後のセキュリティ・ポリシーを作成します。
「ポリシー名」にポリシーの名前を入力します。
「説明」に、ポリシーの説明を入力します。
「チェックポイント」で「認証後」を選択します。
要件に応じてポリシー・ステータス、スコアリング・エンジンおよび重みを変更します。
「適用」をクリックします。
「OK」をクリックして、確認ダイアログを閉じます。
「ルール」タブをクリックします。
ルールに関する一般的なサマリー情報を追加します。
条件タブで、「ユーザー: OTP失敗の確認」
条件または他のOTP関連の条件を追加します。
「結果」タブで、アクション・グループに「OAAMチャレンジ」
を指定します。
ポリシーをすべてのユーザーにリンクします。
この項の内容は次のとおりです。
モバイル・フィールドの名前と説明をカスタマイズするには、次のプロパティをclient_resource_
locale.properties
に追加します。
ご使用条件をカスタマイズするには、次のプロパティを値とともにclient_resource_
locale.properties
に追加します。ご使用条件のデフォルト・メッセージは、client_resource_
locale.properties
の値によって構成されます。
表16-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®、T-Mobile®、Cellular One Dobson、Cincinnati Bell、Alltel、Virgin Mobile USA、Cellular South、Unicel、CentennialおよびNtelos。 |
bharosa.uio.default.userinfo.inputs.enum.terms.name
の値には、「ご使用条件」および「プライバシ・ポリシー」に対するOAAMサーバーのポップアップ・メッセージを使用するプレースホルダ・リンクが含まれます。ポップアップのコンテンツのプロパティおよびリソース・キーは次のとおりです。
表16-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 |
プライバシ・ポリシーのプレースホルダ・テキスト |
登録ページのメッセージ・テキストをカスタマイズするには、これらのプロパティをclient_resource_
locale.properties
に追加します。
表16-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 |
辞退 |
チャレンジ・ページのメッセージ・テキストをカスタマイズするには、これらのプロパティをclient_resource_
locale.properties
に追加します。
表16-15 チャレンジ・ページのメッセージ・テキストのカスタマイズ
プロパティ | デフォルト値 |
---|---|
bharosa.uio.default.ChallengeSMS.message |
お客様の保護のため、お客様の携帯電話にお送りしたコードを入力してください。コードが届いていない場合は、電話のテキスト・メッセージが有効になっていることを確認してから、下の再送信リンクをクリックしてください。 |
bharosa.uio.default.ChallengeSMS.registerdevice.message |
現在、安全なデバイスとして使用しているデバイスの登録を確認します: |
bharosa.uio.default.ChallengeSMS.continue.button |
続行 |
OTPメッセージ・テキストをカスタマイズするには、これらのプロパティをclient_resource_
locale.properties
に追加します。
プロパティを編集することによりワンタイム・パスワード生成を構成できます。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
プロパティを編集することによりワンタイム・パスワードの有効期間を構成できます。
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分)に設定する必要があります。
デフォルトでは、使用されるチャレンジ・デバイスはルールを使用して構成されています。ルールはAuthentiPadチェックポイントの下に存在し、これにより、デバイスの目的に基づいて使用するデバイスのタイプを指定できます。
チャレンジ・タイプを使用するポリシーを作成または更新する手順は次のとおりです。
列挙rule.action.enum
を指定する新しいルール・アクションMyChallenge
を追加します。
新規作成されたアクションMyChallenge
を戻すポリシーを作成して、チャレンジ・メソッドを使用します。
または、プロパティを使用してチャレンジ・デバイスを構成する場合、bharosa.uio.default.use.authentipad.checkpoint
をfalse
に設定して、AuthentiPadチェックポイントをバイパスできます。
チャレンジ・タイプで使用するデバイスを追加できます。
bharosa.uio.application.challengeType.authenticator.device=<value>
次の例では、チャレンジ・タイプ・キーのChallengeEmail
とChallengeSMS
を使用してプロパティ名を作成しています。
bharosa.uio.default.ChallengeSMS.authenticator.device=DevicePinPad bharosa.uio.default.ChallengeEmail.authenticator.device=DevicePinPad
使用可能なチャレンジ・デバイス値はDeviceKeyPadFull
、DeviceKeyPadAlpha
、DeviceTextPad
、DeviceQuestionPad
、DevicePinPad
およびDeviceHTMLControl
です。
表16-17 認証デバイス・タイプ
プロパティ | 説明 |
---|---|
なし |
HTMLページまたは認証パッドはありません。 |
DeviceKeyPadFull |
KeyPadを使用してユーザーにチャレンジします。 |
DeviceKeyPadAlpha |
英数字KeyPad(数字と文字のみで特殊文字は含みません)を使用して、ユーザーにチャレンジします。 |
DeviceTextPad |
TextPadを使用してユーザーにチャレンジします。 |
DeviceQuestionPad |
QuestionPadを使用してユーザーにチャレンジします。 |
DevicePinPad |
PinPadを使用してユーザーにチャレンジします。 |
DeviceHTMLControl |
認証パッドのかわりにHTMLページを使用して、ユーザーにチャレンジします。 |
チャレンジ・タイプ列挙は、チャレンジ・タイプを(そのチャレンジ・タイプの関連作業を実行するために必要な)Javaコードに関連付けるのに使用できます。チャレンジ・タイプID (ChallengeEmail)は、チャレンジ・タイプを使用する際にルールにより返されるルール・アクションと一致している必要があります。「チャネル」は通常、OTPをユーザーに送信するために使用される配信チャネル(電子メール、SMSまたはIM)です。
表16-18 チャレンジ・タイプの列挙
プロパティ | 説明 |
---|---|
available |
チャレンジ・タイプが使用可能(サービスが準備され構成されている)かどうか。OTPチャレンジ・タイプを有効/無効にするには、可用性フラグを設定する必要があります。 |
processor |
このタイプのチャレンジを処理するためのJavaクラス。 |
requiredInfo |
登録入力列挙からの入力のカンマ区切りリスト。 |
表16-19に、SMSチャレンジ・プロセッサを登録するプロパティと、サービスを使用可能(または使用不可)とマークするプロパティを示します。
表16-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"です。 |
この項では、OTP Anywhereのデータ・ストレージをカスタマイズする方法について説明します。OTP Anywhereをカスタマイズするには、com.bharosa.uio.manager.user.UserDataManagerIntfインタフェースを実装します。
カスタマイズで使用するメソッドは、次のとおりです。
public String getUserData(UIOSessionData sessionData, String key)
;
public void setUserData(UIOSessionData sessionData, String key, String value);
デフォルト実装はインタフェース上に展開して、すべての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; } }
ベース実装クラスDefaultContactInfoManager
を拡張し、メソッドsetUserDataValue
およびgetUserDataValue
をオーバーライドして、実装用の適切な場所にデータ値を格納します。
デフォルト実装のsetUserDataFlag
およびgetUserDataFlag
を所定の場所に置いたままにして、OAAMでユーザーに設定されたデータを適切に追跡できるようにします。
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
属性の値を更新できます。
OAAMでは、ユーザーがSMSを介してOTPに登録され、また電子メールを介してOTPに登録されている場合にユーザーを認証する手段をエンドユーザーが決定できるようにすることができます。
チャレンジ・チェックポイントでは、ユーザーへのチャレンジに使用するメカニズムを決定します。"ChallengeChoice"と少なくとも1つの他のチャレンジ・タイプ(ChallengeEmail、ChallengeSMSなど)がチャレンジ・チェックポイントの結果に構成されている場合、ユーザーはチャレンジ・タイプの選択肢を与えられます。
チャレンジ選択ページには、チャレンジ・タイプの説明と、そのチャレンジ・タイプの表示リストに存在するデータが含まれます。データは、列挙内のユーザー情報要素に対して定義されたマスクregexに従ってマスクされます。
ユーザーがチャレンジ・タイプを選択すると、そのタイプでチャレンジされます。チャレンジの選択肢の選択ページに戻るためにチャレンジ・ページへのリンクも提供されます。ただし、ユーザーが特定のタイプのチャレンジに対してチャレンジ・カウンタの制限に達すると、そのユーザーはログアウトされ、エラーを示すログイン/エラー・ページに移動します。
チャレンジ選択メッセージを構成するには、次のプロパティをoaam_uio.properties
に追加します。
表16-20 チャレンジ選択タイプのメッセージの構成
プロパティ | デフォルト値 |
---|---|
bharosa.uio.default.ChallengeChoice.title |
チャレンジ選択ページのタイトル。 |
bharosa.uio.default.ChallengeChoice.message |
OTPコードを受け取る方法を選択してください。 |
bharosa.uio.default.ChallengeChoice.continue.message |
続行メッセージ。 |
bharosa.uio.default.ChallengeChoice.continue.button |
続行 |
bharosa.uio.default.ChallengeChoice.invalid_choice.message |
入力した選択肢が無効です。選択を確認して再試行してください。 |
bharosa.uio.default.ChallengeChoice.not_available.message |
選択したチャレンジ・タイプが使用可能ではありません。もう一度選択してください。 |
bharosa.uio.default.ChallengeChoice.continue.enabled |
true |
チャレンジ・タイプのリンクを構成するには、次のプロパティをoaam_uio.properties
に追加します。
表16-21 チャレンジ選択ページのリンク
プロパティ | デフォルト値 |
---|---|
bharosa.uio.default.ChallengeQuestion.links.enum.choice |
4 |
bharosa.uio.default.ChallengeQuestion.links.enum.choice.name |
選択肢の変更 |
bharosa.uio.default.ChallengeQuestion.links.enum.choice.description |
別のチャレンジ方法を選択してください。 |
bharosa.uio.default.ChallengeQuestion.links.enum.choice.url |
javascript:newChoice(); |
bharosa.uio.default.ChallengeQuestion.links.enum.choice.personalization |
false |
bharosa.uio.default.ChallengeQuestion.links.enum.choice.challengechoice |
true |
bharosa.uio.default.ChallengeQuestion.links.enum.choice.order |
4 |
bharosa.uio.default.ChallengeQuestion.links.enum.choice.enabled |
true |
bharosa.uio.default.ChallengeEmail.links.enum.choice |
4 |
bharosa.uio.default.ChallengeEmail.links.enum.choice.name |
選択肢の変更 |
bharosa.uio.default.ChallengeEmail.links.enum.choice.description |
別の配信方法を選択してください。 |
bharosa.uio.default.ChallengeEmail.links.enum.choice.url |
javascript:newChoice(); |
bharosa.uio.default.ChallengeEmail.links.enum.choice.personalization |
false |
bharosa.uio.default.ChallengeEmail.links.enum.choice.challengechoice |
true |
bharosa.uio.default.ChallengeEmail.links.enum.choice.order |
4 |
bharosa.uio.default.ChallengeEmail.links.enum.choice.enabled |
true |
bharosa.uio.default.ChallengeSMS.links.enum.choice |
4 |
bharosa.uio.default.ChallengeSMS.links.enum.choice.name |
選択肢の変更 |
bharosa.uio.default.ChallengeSMS.links.enum.choice.description |
別の配信方法を選択してください。 |
bharosa.uio.default.ChallengeSMS.links.enum.choice.url |
javascript:newChoice(); |
bharosa.uio.default.ChallengeSMS.links.enum.choice.personalization |
false |
bharosa.uio.default.ChallengeSMS.links.enum.choice.challengechoice |
true |
bharosa.uio.default.ChallengeSMS.links.enum.choice.order |
4 |
bharosa.uio.default.ChallengeSMS.links.enum.choice.enabled |
true |
bharosa.uio.default.ChallengeIM.links.enum.choice |
4 |
bharosa.uio.default.ChallengeIM.links.enum.choice.name |
選択肢の変更 |
bharosa.uio.default.ChallengeIM.links.enum.choice.description |
別の配信方法を選択してください。 |
bharosa.uio.default.ChallengeIM.links.enum.choice.url |
javascript:newChoice(); |
bharosa.uio.default.ChallengeIM.links.enum.choice.personalization |
false |
bharosa.uio.default.ChallengeIM.links.enum.choice.challengechoice |
true |
bharosa.uio.default.ChallengeIM.links.enum.choice.order |
4 |
bharosa.uio.default.ChallengeIM.links.enum.choice.enabled |
true |
bharosa.uio.default.ChallengeVoice.links.enum.choice |
4 |
bharosa.uio.default.ChallengeVoice.links.enum.choice.name |
選択肢の変更 |
bharosa.uio.default.ChallengeVoice.links.enum.choice.description |
別の配信方法を選択してください。 |
bharosa.uio.default.ChallengeVoice.links.enum.choice.url |
javascript:newChoice(); |
bharosa.uio.default.ChallengeVoice.links.enum.choice.personalization |
false |
bharosa.uio.default.ChallengeVoice.links.enum.choice.challengechoice |
true |
bharosa.uio.default.ChallengeVoice.links.enum.choice.order |
4 |
bharosa.uio.default.ChallengeVoice.links.enum.choice.enabled |
true |
チャレンジ選択メッセージをカスタマイズするには、次のプロパティをasa_msg_resource.properties
に追加します。
表16-22 チャレンジ選択タイプのメッセージのカスタマイズ
プロパティ | デフォルト値 |
---|---|
bharosa.uio.default.ChallengeChoice.title |
チャレンジ選択ページのタイトル。 |
bharosa.uio.default.ChallengeChoice.message |
OTPコードを受け取る方法を選択してください。 |
bharosa.uio.default.ChallengeChoice.continue.message |
続行メッセージ。 |
bharosa.uio.default.ChallengeChoice.continue.button |
続行 |
bharosa.uio.default.ChallengeChoice.invalid_choice.message |
入力した選択肢が無効です。選択を確認して再試行してください。 |
bharosa.uio.default.ChallengeChoice.not_available.message |
選択したチャレンジ・タイプが使用可能ではありません。もう一度選択してください。 |
チャレンジの選択肢の表示を構成するには、次のプロパティをoaam_core.properties
に追加します。
表16-23 チャレンジの選択肢の表示の構成
プロパティ | デフォルト値 |
---|---|
bharosa.uio.default.challenge.type.enum.ChallengeQuestion.displayedInfo |
|
bharosa.uio.default.challenge.type.enum.ChallengeEmail.displayedInfo |
電子メール |
bharosa.uio.default.challenge.type.enum.ChallengeSMS.displayedInfo |
mobile |
bharosa.uio.default.challenge.type.enum.ChallengeIM.displayedInfo |
im |
bharosa.uio.default.challenge.type.enum.ChallengeVoice.displayedInf |
phone |
チャレンジ選択をトリガーするアクションの最小数、連絡先情報のデリミタおよびデータ・マスキング内の置換文字をoaam_uio.properties
の次のプロパティで構成できます。
次のプロパティを使用して、チャレンジ選択をトリガーするアクション・リスト内のアクションの最小数を設定します。
bharosa.uio.default.ChallengeChoice.actionlist.threshold=3
次のプロパティを使用して、チャレンジ選択ページに表示される連絡先情報のデリミタを設定します。
bharosa.uio.default.ChallengeChoice.contactInfo.delim= -
次のプロパティを使用して、チャレンジ選択ページに表示される連絡先情報のマスキングの置換文字を設定します。
bharosa.uio.default.ChallengeChoice.contactInfo.mask=*
チャレンジ選択アクションは、チャレンジ・ポリシーでトリガーの組合せとしてすでに構成されています。電子メールとSMSの両方が使用可能で、ロックされていない場合、ポリシーは「OAAMチャレンジ選択」アクション・グループを返します。「OAAMチャレンジ選択」アクション・グループには、ChallengeChoice、ChallengeEmailおよびChallengeSMSの各アクションが含まれます。
チャレンジ選択アクションが構成されていることを確認する手順:
OAAM管理コンソールにログインします。
ナビゲーション・ペインで、「ポリシー」をダブルクリックします。
ポリシー検索ページが表示されます。
「ポリシー検索」ページで、OAAMチャレンジ・ポリシーを検索します。
「OAAMチャレンジ・ポリシー」をクリックし、「トリガー組合せ」タブをクリックします。
「トリガー組合せ#4」(ユーザーにアクティブな電子メールとSMSがある場合は、チャレンジ・チャネルを選択するオプションを提供する)は、次のように構成されます。
OAAMサーバーは、複数のUMSサーバーに個別に接続するか、ロードバランシングを介してOTPを送信するように構成できます。1台のUMSサーバーに障害が発生した場合でも、OAAMは別のUMSサーバーを通じてメッセージを送信できます。OAAMサーバーがUMSサーバーURLを試行する順序は、構成に基づきます。
複数のUMSサーバーへの接続と、構成でチェックされる順序を指定できます。
UMSサーバーが同じ資格証明を使用する場合は、既存のUMS WebサービスのUMSサーバー(SOAサーバー)のカンマ区切りリストを指定するか、OAAM管理コンソールのOAAMプロパティ・エディタを使用してUMS Webサービス・エンドポイントのURLのプロパティを指定できます。デフォルトでは、UMSサーバー・プロパティは空のままになります。
OAAMサーバーは、リストに出現する順序でUMSサーバーURLを使用してOTPの送信を試行します。UMS URL1がプロパティに最初に出現するため最初にチェックされ、使用可能な場合はUMS URL1がOTPの送信に使用されます。
OAAMがメッセージの送信を試行し、最初のUMSサーバーが失敗するかURLが無効な場合、OAAMサーバーは2つ目のURLを使用してメッセージの送信を試行します。2台目のUMSサーバーで障害が発生するかURLが無効な場合、OAAMは3つ目のURLをチェックし、以下同様に行を上から順にチェックします。OAAMサーバーは、メッセージが正常に送信されるまでメッセージの送信を試行し続けます。
複数のUMSサーバーが異なる資格証明を使用するか、各UMSサーバーにポリシーが必要な場合は、OAAM拡張共有ライブラリのoaam_custom.properties
ファイルに列挙を追加して、複数のユーザー・メッセージング・サーバーURLを指定できます。
使用する列挙のUMS Webサービス・エンドポイントURLプロパティの値を指定する必要があります。推奨される回避策は、既存のプロパティのプライマリUMSサーバーおよび列挙内の任意のバックアップを提供することです。
列挙を編集または追加した後でOAAMサーバーを再起動する必要があります。
OAAMサーバーは、order属性で指定された順序でURLを使用してOTPの送信を試行します。
列挙(OAAM拡張共有ライブラリに追加されている)とプロパティ(プロパティ・エディタで構成されている)の両方が一緒に使用される場合、OTPの送信を試行すると、最初にURL、次にユーザー定義の列挙に基づいてプロパティが試行されます。
たとえば、UMS URL1がプロパティに最初に出現するため最初にチェックされ、使用可能な場合はUMS URL1がOTPの送信に使用されます。UMS URL1が使用不能または無効な場合は、プロパティの2つ目のエントリがチェックされ、以下も同様にチェックされます。すべてのプロパティ・ベースURLをチェックし、すべてが使用不能または無効な場合、OAAMサーバーは列挙ベースのURLをチェックします。列挙ベースのURLが有効な場合は、そのUMSサービスがアクセスされます。
複数のUMSサーバーURLを指定する手順:
OAAM管理コンソールにログインします。
ナビゲーション・ペインで、「環境」ノードの下の「プロパティ」をダブルクリックします。プロパティ検索ページが表示されます。
「名前」フィールドに次のように入力し、「検索」をクリックします。
bharosa.uio.default.ums.integration.useParlayX
「検索結果」セクションでプロパティをクリックして選択し、True
またはFalse
を指定して「保存」をクリックします。
これにより、Webサービスまたはparlayx APIの使用を構成します。デフォルトでは、値はfalseです(推奨)。
「名前」フィールドに次のように入力し、「検索」をクリックします。
bharosa.uio.default.ums.integration.webservice
または
bharosa.uio.default.ums.integration.parlayx.endpoint
「検索結果」セクションでプロパティをクリックして選択し、カンマ区切りリストでUMS URL1, URL2, URL3などを追加して「保存」をクリックします。
たとえば、次のようになります。
http://UMS_server1:UMS-port1/ucs/messaging/webservice, http://UMS_server2:UMS-port2/ucs/messaging/webservice, http://UMS_server3:UMS-port3/ucs/messaging/webservice
各UMSサーバーURLと資格証明について、列挙を追加する必要があります。たとえば、次の列挙を追加します。
bharosa.uio.default.ums.integration.server.enum.primary=1 bharosa.uio.default.ums.integration.server.enum.primary.name=Primary UMS Server bharosa.uio.default.ums.integration.server.enum.primary.description=Primary UMS Server bharosa.uio.default.ums.integration.server.enum.primary.url=URL1 bharosa.uio.default.ums.integration.server.enum.primary.username=USERNAME1 bharosa.uio.default.ums.integration.server.enum.primary.password=PASSWORD1 bharosa.uio.default.ums.integration.server.enum.primary.policies= bharosa.uio.default.ums.integration.server.enum.primary.useparlayx=false bharosa.uio.default.ums.integration.server.enum.primary.order=1 bharosa.uio.default.ums.integration.server.enum.primary.enabled=true bharosa.uio.default.ums.integration.server.enum.secondary=2 bharosa.uio.default.ums.integration.server.enum.secondary.name=Secondary UMS Server bharosa.uio.default.ums.integration.server.enum.secondary.description=Secondary UMS Server bharosa.uio.default.ums.integration.server.enum.secondary.url=URL2 bharosa.uio.default.ums.integration.server.enum.secondary.username=USERNAME2 bharosa.uio.default.ums.integration.server.enum.secondary.password=PASSWORD2 bharosa.uio.default.ums.integration.server.enum.secondary.policies= bharosa.uio.default.ums.integration.server.enum.secondary.useparlayx=false bharosa.uio.default.ums.integration.server.enum.secondary.order=2 bharosa.uio.default.ums.integration.server.enum.secondary.enabled=true
この項の内容は次のとおりです。
表16-25に、追加の登録フィールド定義を示します。
表16-25 連絡先情報入力
プロパティ | 説明 |
---|---|
inputname |
HTML形式の入力フィールドに使用される名前。 |
inputtype |
テキスト入力またはパスワード入力用に設定されます。 |
maxlength |
ユーザー入力の最大長。 |
required |
フィールドが登録ページで必須である場合に設定されます。 |
order |
ユーザー・インタフェースに表示される順序。 |
regex |
このフィールドのユーザー入力を検証するために使用される正規表現。 |
errorCode |
検証エラー・メッセージ( |
managerClass |
com.bharosa.uio.manager.user.UserDataManagerIntfを実装するJavaクラス(Oracle Adaptive Access Managerデータベースでデータが盗難された場合、このプロパティはcom.bharosa.uio.manager.user.DefaultContactInfoManagerに設定される必要があります)。 |
次に、オーセンティケータのOTP登録ページで電子メール登録を定義する列挙の例を示します。
表16-26 電子メール入力
プロパティ | デフォルト値 | 説明 |
---|---|---|
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} OAAM管理で構成する場合: .+@[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クラス |
次に、オーセンティケータのOTP登録ページで電話登録を定義する列挙の例を示します。
表16-27 電話入力
プロパティ | デフォルト値 | 説明 |
---|---|---|
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クラス |
登録に関して電子メールのエントリ情報のみを表示し、携帯電話のエントリ情報を無効にするには、次のように設定します。
bharosa.uio.default.userinfo.inputs.enum.email.enabled=true bharosa.uio.default.userinfo.inputs.enum.mobile.enabled=false
電子メール・フィールドを有効にするには、サーバーを再起動する必要があります。
次に、オーセンティケータのOTP登録ページでIM登録を定義する列挙の例を示します。
表16-28 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クラス |
チャレンジ・メッセージ・カスタマイズのその他の例は、以降の項に示します。これらのプロパティをclient_resource_
locale.properties
に追加する必要があります。
表16-29に、OTP電子メール・メッセージのプロパティを示します。カスタマイズされたOTP電子メール・メッセージのプロパティbharosa.uio.default.ChallengeEmail.message.subject
およびbharosa.uio.default.ChallengeEmail.message.body
を、client_resource.properties
に追加する必要があります。プロパティbharosa.uio.default.ChallengeEmail.message.from.address
をoaam_custom.properties
に追加する必要があります。
表16-31に、追加のプロセッサ登録プロパティを示します。
表16-31 チャレンジ・タイプの列挙
プロパティ | 説明 |
---|---|
available |
チャレンジ・タイプが使用可能(サービスが準備され構成されている)かどうか。OTPチャレンジ・タイプを有効/無効にするには、可用性フラグを設定する必要があります。 |
processor |
このタイプのチャレンジを処理するためのJavaクラス。 |
requiredInfo |
登録入力列挙からの入力のカンマ区切りリスト。 |
表16-32に、電子メール・チャレンジ・プロセッサを登録するプロパティと、サービスを使用可能(または使用不可)としてマークするプロパティを示します。
表16-32 電子メール・チャレンジ・プロセッサを登録するプロパティ
プロパティ | デフォルト値 | 説明 |
---|---|---|
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 |
|
電子メール・チャレンジ・タイプでユーザーにチャレンジするための必須フィールド 登録入力列挙からの入力のカンマ区切りリスト |
bharosa.uio.default.challenge.type.enum.ChallengeEmail.displayedInfo |
|
|
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"です。 |
表16-33に、IMチャレンジ・プロセッサを登録するプロパティと、サービスを使用可能(または使用不可)としてマークするプロパティを示します。
表16-33 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.ChallengeIMProcessor |
インスタント・メッセージのチャレンジ・タイプのプロセッサ・クラス |
bharosa.uio.default.challenge.type.enum.ChallengeIM.requiredInfo |
mobile |
インスタント・メッセージのチャレンジ・タイプでユーザーにチャレンジするための必須フィールド |
bharosa.uio.default.challenge.type.enum.ChallengeIM.available |
false |
インスタント・メッセージのチャレンジ・タイプの可用性フラグ |
bharosa.uio.default.challenge.type.enum.ChallengeIM.otp |
true |
インスタント・メッセージのチャレンジ・タイプのOTPフラグ |