Oracle Business Rules ユーザーズ・ガイド 10g(10.1.3.1.0) B31866-02 |
|
この付録では、リポジトリを利用したRule AuthorとRules SDKの使用について説明します。
この付録の内容は次のとおりです。
この項では、WebDAVリポジトリの設定と構成について説明します。
Oracle Business Rulesでは、ルールセット、データ・モデルおよびルールの永続的なストレージとして、WebDAVリポジトリの使用がサポートされています。この項では、WebDAVリポジトリの設定方法を説明し、Oracle HTTP Serverに、ファイル・システム・ベースのWebDAVリポジトリを設定するための基本的な手順を説明します。Oracle HTTP Serverでは、mod_oradav
モジュールによってWebDAVがサポートされます。
WebDAVプロトコルはHTTPプロトコルの拡張機能で、リモート・ユーザーはこれによって、Webサーバーにコンテンツを書き込むことができます。この構成を使用して、望ましくない結果を防止し、セキュアなシステムを保守するために、Webサーバーを適切に構成することが重要です。
Webサーバーに次のセキュリティ機能の一部またはすべてを採用することをお薦めします。
ForceType
ディレクティブを使用して、WebDAV対応領域内のコンテンツを参照するURLの実行を防止します。
次の例は、ファイル・システムにコンテンツが格納されているWebDAVベースのリポジトリを確立するために使用できる手順を示しています。この例のすべてのファイル・システム・パスは、Oracle HTTP ServerがインストールされているORACLE_HOME
に対する相対パスです。また、この例では、ユーザーがOracle Application Serverをインストールしたユーザーでログインし、Oracle HTTP Serverには、URLのhttp://www.myserver.com:
portを使用してアクセスできることを前提としています。
注意: この例のWebDAVリポジトリの構成は、内部テストとしてのみ使用し、実際の本番環境では使用しないでください。この構成には、アクセス制御が含まれていないため、WebDAVリポジトリに対するアクセスまたは変更が誰に対しても許可されます。WebDAVリポジトリのセキュリティ構成の詳細は、B.2項を参照してください。 |
Apache/Apache/htdocs
ディレクトリ(フォルダ)にナビゲートします。
rule_repository
という名前のディレクトリを作成します。
rule_repository
ディレクトリの読取りと書込みが可能であることを確認します。
Apache/oradav/conf
ディレクトリにナビゲートします。
moddav.conf
ファイルを編集し、次の行を追加します。
<Location /rule_repository> DAV on ForceType text/plain </Location>
この手順によって、次のURLでアクセス可能なWebDAVリポジトリが確立します。
http://www.fully_qualified_host_name.com:port/rule_repository/
WebDAVリポジトリ・タイプを選択すると、Rule Authorによって、表B-1に示した構成パラメータが表示されます。
パラメータ | width="82%" 説明 |
---|---|
|
希望するWebDAVルール・リポジトリのURL。このパラメータは必須です。ホスト名は、完全修飾ホスト名である必要があります。 |
|
WebDAVへのアクセス権限を持つユーザーを指定します。 |
|
指定したユーザー名に関連付けられているWebDAVユーザーのパスワードを指定します。 |
Rule Authorは、http.proxyHost
システム・プロパティを検索します。このプロパティが設定されている場合、Rule Authorはhttpプロキシ・システム・プロパティを取得し、WebDAV接続に使用します。httpプロトコル・ハンドラがプロキシを使用するように指定するために設定できるプロパティには、次の3つがあります。
http.proxyHost
: プロキシ・サーバーのホスト名。
http.proxyPort
: ポート番号。デフォルト値は80です。
http.nonProxyHosts
: プロキシをバイパスして、直接到達するホストのリスト。これは、「|」で区切られた正規表現のリストです。これらの正規表現のいずれかに一致するホストには、プロキシ経由ではなく、直接接続経由で到達します。
WebDAVリポジトリにアクセスするためにプロキシが必要な場合、Rule Authorによって、表B-1に示すパラメータに加えて、表B-2に示すパラメータが表示されます。
パラメータ | 説明 |
---|---|
|
プロキシ・ユーザー名を指定します。プロキシ・サーバーにセキュリティが構成されている場合に必須です。 |
|
プロキシ・パスワードを指定します。プロキシ・サーバーにセキュリティが構成されている場合に必須です。 |
WebDAVでは、WebDAV対応Webサーバーに対する読取りと書込みのアクセスが可能です。WebDAV Webサーバーを保護するための適切な手順を実行することをお薦めします。この保護のために、SSLを利用してWebDAV Webサーバーへの接続を暗号化する必要があります。また、認証を要求する必要があります。
内容は次のとおりです。
Rule AuthorがOracle Application Server環境にデプロイされている場合、WebDAVリポジトリに対する基本のSSL接続はRule Authorでサポートされます。必要なことは、入力したWebDAV URLによってhttps
を指定することです。
Rule Authorが、スタンドアロンのOC4J環境やHTTPのみをサポートするOracle以外のコンテナにデプロイされている場合、WebDAVリポジトリに対するSSL接続はサポートされません。
Oracle Application Serverには、自己署名のSSL証明書のテストが用意されています。テスト証明書の本番環境での使用は安全でないため、この証明書はユーザー独自の証明書に置換する必要があります。信頼できる認証局の証明書を使用する場合は、OC4Jコンテナの内側と外側の両方からWebDAVにアクセスできます。独自の自己署名証明書の使用を選択する場合、コンテナの内側からはアクセスできますが、外側からはアクセスできません。アクセスするためには、デフォルトのJSSEトラスト・ストアを変更する必要があります。詳細は、JDKに含まれている『JSSE Reference Guide』を参照してください。
また、Oracle SSL実装は、J2SEアプリケーションのクラスパスには提示しないでください。
Rule Authorに対するOracleウォレットの場所をカスタマイズする手順は、次のとおりです。
walletStorePath
エントリの「デプロイ済の値」列にウォレットの場所を指定します。
ウォレットの場所は、「デプロイ・プランの編集」をクリックし、左側にあるナビゲーション・ツリーをenv-entryが表示されるまで開いて、Rule Authorをデプロイするときにも設定できます。env-entryを開き、walletStorePath
を選択します。ウォレットの場所を指定した後は、Rule Authorを再起動してください。
認証を要求するように構成されたWebDAVリポジトリに接続しようとするRule Authorは、認証リクエストに応答できる必要があります。リポジトリ認証に対してRule Authorを構成する手順は、次のとおりです。
WebDAVリポジトリから受信した認証リクエストによって、次の情報が提供されます。
この情報は、認証用のユーザー名とパスワードを取得するキーの構築に使用されます。プロキシ・サーバーで認証が必要な場合は、複数の認証リクエスト(プロキシ・サーバーとWebDAVサーバーの各リクエスト)を処理できます。
リクエストがプロキシ認証用である場合、そのキーは「proxy-」から始まります。キーの後には、「-」で区切られたホスト名、ポートおよびレルムの各フィールドが順に続きます。最後に、ユーザー名には「-u」が、パスワードには「-p」がキーに追加されます。たとえば、次の内容を想定します。
myserver.myco.com
wwwproxy.myco.com
この場合、プロキシ認証用のキーは、次のようになります。
WebDAV認証用のキーは、次のようになります。
ユーザー名とパスワードは、$ORACLE_HOME
のbin
ディレクトリにあるmkstore
コマンドを使用して、Oracleウォレットに入力されます。Oracleウォレットの作成と変更には、そのウォレットの作成時に指定したパスワードが必要です。ただし、ウォレットは、ユーザー名とパスワードを参照する実行時にパスワードが要求されないように構築されています。したがって、この機密データを保護するためには、ファイル・システム権限を使用してアクセスを制限する必要があります。アクセス権の付与は、実行時のウォレットにアクセスする必要があるユーザーのみに限定する必要があります。デフォルトでは、mkstore
コマンドによって、権限が制限されたウォレットが作成されます。
次のコマンドでは、ウォレットが/wallets
ディレクトリに作成され、ユーザー名とパスワードが格納されます。この例のユーザー名とパスワードは、proxyUser
、proxyPassword
、webdavUser
およびwebdavPassword
です。
mkstore -wrl /wallets/rules_wallet -create mkstore -wrl /wallets/rules_wallet -createEntry "proxy-wwwproxy.myco.com-80-Authorized Proxy Users Only-u" proxyUser mkstore -wrl /wallets/rules_wallet -createEntry "proxy-wwwproxy.myco.com-80-Authorized Proxy Users Only-p" proxyPassword mkstore -wrl /wallets/rules_wallet -createEntry "www.myco.com-80-Authorized WebDAV Users Only-u" webdavUser mkstore -wrl /wallets/rules_wallet -createEntry "www.myco.com-80-Authorized WebDAV Users Only-p" webdavPassword
各コマンドでは、ウォレットのパスワード入力を求めるプロンプトが表示され、必要な場合は、そのウォレットのディレクトリ(rules_wallet
がディレクトリです)が作成されます。
次のコマンドでは、mkstore
コマンドの様々な機能をリストした使用方法のメッセージが出力されます。
mkstore -help
この項では、ファイル・リポジトリの設定と使用について説明します。
Oracle Business Rulesには、ディクショナリを含まない空のファイル・リポジトリが用意されています。このファイル・リポジトリは、emptyFileRepository
という名前で、$ORACLE_HOME
/rules/lib
ディレクトリ内にあります。
新規のファイル・リポジトリを設定するには、emptyFileRepository
ファイルをコピーして名前を変更します。次に、このファイル名と場所を「リポジトリ」タブにある「接続」ページで指定します(2.4.1項「Rule Authorリポジトリへの接続」を参照)。
新規のファイル・リポジトリを作成した後は、そのファイル・リポジトリに接続し、リポジトリ内にディクショナリを作成して保存できます。
選択されているリポジトリ・タイプが「ファイル」である場合に、「リポジトリ」タブにある「接続」ページで「作成」をクリックして新規のファイル・リポジトリを作成することもできます。既存のリポジトリ・パスを入力し、「作成」をクリックした場合、この作成は「接続」をクリックした場合のように動作し、既存のリポジトリに接続します。
SDKによって、RepositoryConnection
インタフェースが起動し、リポジトリのコンテンツが更新されると、次の操作が実行されます。
File.createTempFile
メソッドを使用して作成します。リポジトリの名前が3文字未満の場合は、「_tmp_」が追加されます。File.createTempFile
メソッドでは、リポジトリの名前が3文字以上である必要があります。Sun JDKでは、名前に数字を追加しますが、他のJVM動作は異なる場合があります。このファイル名の拡張子は「.tmp」で、ファイルは既存のリポジトリと同じディレクトリに作成されます。要約すると、myRepository
というリポジトリのテンポラリ・ファイル名はmyRepository65146.tmp
になり、rr
というリポジトリのテンポラリ・ファイル名はrr_tmp_65147.tmp
になります。
myRepository
など)に変更されます。
このプロセスでエラーが発生した場合は、クリーン・アップが試みられます。以前に作成されたテンポラリ・ファイルが現在も存在する場合は、削除が試みられます。また、既存のリポジトリの名前が変更された場合は、元の名前の復元が試みられます。
テンポラリ・ファイルが残されている場合は、更新を試みる前にそのファイル・リポジトリが存在している必要があります。コンテンツの状態が不明なテンポラリ・ファイルは削除してください。
改名したリポジトリ・ファイルはあるが、元のリポジトリ・ファイルがすでにない場合、この改名したリポジトリ・ファイルには、更新前のコンテンツが含まれているため、手動で復元する必要があります(つまり、名前を変更するか、または改名したファイルをコピーして正しい名前に戻します)。
構成した後のWebDAVリポジトリは、バックアップ・プロセスとリカバリ・プロセスの対象となるように、OracleAS Recovery Managerの構成に追加する必要があります。
OracleAS Recovery Managerの詳細は、『Oracle Application Server管理者ガイド』を参照してください。
|
![]() Copyright © 2005, 2006, Oracle Corporation. All Rights Reserved. |
|