検索順序
Oracle Hyperion Shared Servicesでは、ネイティブ・ディレクトリ以外に複数のユーザー・ディレクトリを構成できます。デフォルトの検索順序の位置は、すべての構成済ユーザー・ディレクトリに割り当てられます。検索順序をOracle Hyperion Shared Services Consoleから変更できます。ネイティブ・ディレクトリを除き、構成済ユーザー・ディレクトリは検索順序から除去できます。Oracle Enterprise Performance Management Systemでは、検索順序に含まれていないユーザー・ディレクトリは使用されません。Oracle Enterprise Performance Management Systemユーザー・セキュリティ管理ガイドを参照してください。
検索順序により、ユーザーの認証のためにEPM Systemがユーザー・ディレクトリ内を循環する順序が決定されます。ユーザーがユーザー・ディレクトリ内で認証されている場合、EPM Systemは検索を停止し、ユーザーを戻します。ユーザーが検索順序内のユーザー・ディレクトリに対して認証されていない場合、EPM Systemは認証を拒否してエラーを戻します。
検索順序でのカスタム認証の影響
カスタム認証は、EPM Systemセキュリティによる検索順序の解釈に影響を及ぼします。
カスタム認証モジュールでユーザー名が戻された場合、EPM Systemは、カスタム認証で使用可能なユーザー・ディレクトリのみでユーザーを検索します。この段階では、EPM Systemはカスタム認証用に構成されていないユーザー・ディレクトリを無視します。
使用事例シナリオ1
次の表に、このシナリオで使用するEPM Systemユーザー・ディレクトリ構成と検索順序を示します。このシナリオでは、カスタム認証モジュールがRSAインフラストラクチャを使用してユーザーを認証すると仮定します。
表5-1 シナリオ1の設定
ユーザー・ディレクトリのタイプと名前 | 検索順序 | カスタム認証 | サンプル・ユーザー名 | パスワード脚注 1 |
---|---|---|---|---|
ネイティブ・ディレクトリ | 1 | 使用不可 |
|
password |
LDAP対応 SunONE_West |
2 | 使用不可 |
|
ldappassword |
LDAP対応 SunONE_East |
3 | 使用可能 |
|
SunONEではldappassword 、カスタム・モジュールではRSA PIN |
脚注 1 単純化するため、すべてのユーザーが同じユーザー・ディレクトリ・パスワードを使用すると仮定します。
認証プロセスを開始するには、ユーザーはEPM System製品のログオン画面でユーザー名とパスワードを入力します。このシナリオでは、カスタム認証モジュールは次のアクションを実行します:
username@providername
形式(たとえば、test_ldap_2@SunONE_East
)でEPM Systemセキュリティに戻します表5-2 ユーザーのやりとりと結果
ユーザー名およびパスワード | 認証結果 | ログイン・ユーザー・ディレクトリ |
---|---|---|
test_user_1/password |
成功 | ネイティブ・ディレクトリ |
test_user_3/password |
成功 | ネイティブ・ディレクトリ |
test_user_3/ldappassword |
成功 | SunONE_West (検索順序2)脚注 2 |
test_user_3/RSA PIN |
成功 | SunONE_East (検索順序3)脚注 3 |
test_ldap_2/ldappassword |
成功 | SunONE_West (検索順序2) |
test_ldap_4/RSA PIN |
失敗
EPM Systemに認証エラーが表示されます。脚注 4 |
脚注 2
ユーザーはEPM System資格証明を入力したので、カスタム認証ではこのユーザーは認証できません。EPM Systemはカスタム認証で使用可能でないユーザー・ディレクトリでのみこのユーザーを識別できます。ユーザーはネイティブ・ディレクトリ(検索順序番号1)にはなく、SunONE West (検索順序番号2)で識別されます。
脚注 3
EPM Systemは、このユーザーをネイティブ・ディレクトリ(検索順序番号1)またはSunONE West (検索順序番号2)で見つけられません。カスタム認証モジュールではRSAサーバーに対してユーザーを検証し、test_user_3@SunONE_EAST
をEPM Systemに戻します。EPM SystemはユーザーをSunONE East(検索順序番号3)で検索します。これはカスタム認証が有効なディレクトリです。
脚注 4
カスタム・モジュールで認証されているユーザーはすべて、検索順序に含まれるカスタム認証が有効なユーザー・ディレクトリに含めることをお薦めします。カスタム認証モジュールで戻されるユーザー名が、検索順序に含まれるカスタム認証が有効なユーザー・ディレクトリにない場合、ログインは失敗します。
使用事例シナリオ2
次の表に、このシナリオで使用するEPM Systemユーザー・ディレクトリ構成と検索順序を示します。このシナリオでは、カスタム認証モジュールがRSAインフラストラクチャを使用してユーザーを認証すると仮定します。
このシナリオでは、カスタム認証モジュールは次のアクションを実行します:
test_ldap_2
)をEPM Systemセキュリティに戻します。表5-3 検索順序の例
ユーザー・ディレクトリ | 検索順序 | カスタム認証 | サンプル・ユーザー名 | パスワード脚注 5 |
---|---|---|---|---|
ネイティブ・ディレクトリ | 1 | 使用不可 |
|
password |
LDAP対応(たとえば、SunONE) | 2 | 使用可能 |
|
SunONEではldappassword 、カスタム・モジュールではRSA PIN |
脚注 5 単純化するため、すべてのユーザーが同じユーザー・ディレクトリ・パスワードを使用すると仮定します。
認証プロセスを開始するには、ユーザーはEPM System製品のログイン画面でユーザー名とパスワードを入力します。
表5-4 ユーザーのやりとりと結果
ユーザー名およびパスワード | ログイン結果 | ログイン・ユーザー・ディレクトリ |
---|---|---|
test_user_1/password |
成功 | ネイティブ・ディレクトリ |
test_user_3/password |
成功 | ネイティブ・ディレクトリ |
test_user_3/ldappassword |
失敗 | SunONE脚注 6 |
test_user_3/RSA PIN |
成功 | SunONE脚注 7 |
脚注 6
ネイティブ・ディレクトリに対するユーザーの認証は、パスワードが一致していないために失敗します。カスタム認証モジュールを使用したユーザーの認証は、使用されたパスワードが有効なRSA PINではないため失敗します。EPM Systemは、カスタム認証設定がこのディレクトリのEPM System認証をオーバーライドしたため、SunONE (検索順序2)でこのユーザーの認証を試行しません。
脚注 7
ネイティブ・ディレクトリに対するユーザーの認証は、パスワードが一致していないために失敗します。カスタム認証モジュールによりユーザーが認証され、ユーザー名test_user_3
がEPM Systemに戻されます。
使用事例シナリオ3
次の表に、このシナリオで使用するEPM Systemユーザー・ディレクトリ構成と検索順序を示します。このシナリオでは、カスタム認証モジュールがRSAインフラストラクチャを使用してユーザーを認証すると仮定します。
このようなシナリオの明確さのため、カスタム認証モジュールがユーザー名をusername@providername
形式(たとえば、test_ldap_4@SunONE
)で戻すことをお薦めします。
表5-5 検索順序の例
ユーザー・ディレクトリ | 検索順序 | カスタム認証 | サンプル・ユーザー名 | パスワード脚注 8 |
---|---|---|---|---|
ネイティブ・ディレクトリ | 1 | 使用可能 |
|
RSA_PIN |
LDAP対応(たとえば、MSAD) | 2 | 使用不可 |
|
ldappassword |
LDAP対応(たとえば、SunONE) | 3 | 使用可能 |
|
SunONEではldappassword 、カスタム・モジュールではRSA PIN |
脚注 8 単純化するため、すべてのユーザーが同じユーザー・ディレクトリ・パスワードを使用すると仮定します。
認証プロセスを開始するには、ユーザーはEPM System製品のログオン画面でユーザー名とパスワードを入力します。
表5-6 ユーザーのやりとりと結果
ユーザー名およびパスワード | 認証結果 | ログイン・ユーザー・ディレクトリ |
---|---|---|
test_user_1/password |
成功 | ネイティブ・ディレクトリ |
test_user_3/RSA_PIN |
成功 | ネイティブ・ディレクトリ |
test_user_3/ldappassword |
成功 | MSAD (検索順序2) |
test_ldap_4/ldappassword |
成功 | MSAD (検索順序2) |
test_ldap_4/RSA PIN |
成功 | SunONE (検索順序3) |
ユーザー・ディレクトリおよびカスタム認証モジュール
カスタム認証モジュールを使用するには、EPM Systemユーザーおよびグループ情報を含むユーザー・ディレクトリを、カスタム・モジュールに認証を委任するよう個別に構成できます。
カスタム・モジュールを使用して認証されたEPM Systemユーザーは、検索順序(検索順序を参照)に含まれたユーザー・ディレクトリの1つに存在する必要があります。また、ユーザー・ディレクトリは、認証をカスタム・モジュールに委任するよう構成されている必要があります。
カスタム・プロバイダのユーザーのアイデンティティ(たとえば、RSA SecurIDインフラストラクチャの1357642
)は、Shared Servicesで構成されるユーザー・ディレクトリのユーザー名(たとえば、Oracle Internet DirectoryのjDoe
)と異なる場合があります。ユーザーの認証後、カスタム認証モジュールは、ユーザー名jDoe
をEPM Systemに戻す必要があります。
注:
ベスト・プラクティスとして、EPM Systemで構成されるユーザー・ディレクトリのユーザー名は、カスタム認証モジュールで使用されるユーザー・ディレクトリで使用可能なものと同一にすることをお薦めします。
CSSCustomAuthenticationIF
Javaインタフェース
カスタム認証モジュールは、EPM Systemセキュリティ・フレームワークとの統合にCSSCustomAuthenticationIF
Javaインタフェースを使用する必要があります。カスタム認証が成功した場合はユーザー名の文字列を、認証が失敗した場合はエラー・メッセージを戻す必要があります。認証プロセスが完了した場合、カスタム認証モジュールによって戻されたユーザー名は、Shared Services検索順序に含まれるユーザー・ディレクトリの1つに存在する必要があります。EPM Systemセキュリティ・フレームワークでは、username@providerName
形式がサポートされています。
注:
カスタム認証モジュールが戻すユーザー名に* (アスタリスク)を含めないでください。EPM Systemセキュリティ・フレームワークがユーザーの検索中にワイルドカード文字と解釈します。
CSSCustomAuthenticationIF
インタフェース・シグネチャは、サンプル・コード1を参照してください。
カスタム認証モジュール(クラス・ファイルを使用可)は、CustomAuth.jar
に含まれている必要があります。パッケージ構造は重要ではありません。
CSSCustomAuthenticationIF
インタフェースの詳細は、セキュリティAPIドキュメント。を参照してください
CSSCustomAuthenticationIF
のauthenticate
メソッドではカスタム認証がサポートされます。authenticate
メソッドは、EPM Systemにアクセスしようとする際にユーザーが入力した資格証明(ユーザー名とパスワード)を入力パラメータとして受け入れます。このメソッドは、カスタム認証が成功した場合に文字列(ユーザー名)を戻します。認証に失敗した場合はjava.lang.Exception
をスローします。メソッドにより戻されるユーザー名は、Shared Services検索順序に含まれるユーザー・ディレクトリの1つでユーザーを一意に識別する必要があります。EPM Systemセキュリティ・フレームワークでは、username@providerName
形式がサポートされています。
注:
リソース(たとえば、JDBC接続プール)を初期化するには、クラス・コンストラクタを使用します。これにより、認証のたびにリソースをロードすることがなくなり、パフォーマンスが向上します。