この章では、収集プラグインをパッケージ化するために必要な手順について説明します。
この章の内容は次のとおりです。
前の章では、収集プラグインをパッケージ化できる点まで説明しました。
第2章では、ステージング領域のディレクトリ構造、JDBCドライバ(必要な場合)、マッパー・ファイル、実行可能ファイル、Oracle提供パッチなどのすべてのOracle提供オブジェクトについて説明しました。
第3章では、マッパー・ファイルについて説明しました。
これで、格納場所、AVDFの処理内容を指定するplugin-manifest.xml
ファイルを作成し、.zip
ファイルにパッケージ化してAVDF管理者に送信する準備が整いました。
収集プラグイン・プログラムのパッケージ化の準備が整ったら、「監査収集プラグインのディレクトリ構造」に示されているディレクトリ構造を作成します。
plugin-manifest.xml
ファイルを作成します。必要な場合、「プラグイン・マニフェスト・ファイルの説明」を参照してください。このファイルでは、収集プラグインおよびAudit Vault収集フレームワークの必要な情報を指定して収集プラグインをインスタンス化および実行する関連パラメータを説明します。収集プラグインのタイプに固有のplugin-manifest.xml
ファイルの例は、「サンプル・コード」を参照してください。
収集プラグイン・ファイル、plugin-manifest.xml
ファイルおよび収集プラグインが実行時に依存する追加のjarをパッケージ化します。
avpack
ツールを実行します。avpack
ツールは、収集プラグイン・パッケージを表す.zip
パッケージを検証および生成します。「avpackツール」を参照してください。
avpack
ツールは、多数の妥当性チェック(ディレクトリ構造が正しく移入されているか、マニフェスト・ファイルが正しい形式か、エラーがないかなど)を実行し、デプロイ用にzipファイルの形式で収集プラグイン・パッケージを生成します。
このパッケージ化プロセスで外部依存とは、実行時に必要ですが、収集プラグインをパッケージ化する際に使用できない可能性があるファイルのことです。たとえば、収集プラグインが、エンドユーザーがライセンスを付与するサード・パーティ・コンポーネント、またはライセンスまたは著作権に関連する問題を持つコンポーネントに依存する場合、そのコンポーネントをパッケージ化できない可能性があり、エンドユーザーは収集プラグインのデプロイ中に提供する必要があります。
これらのシナリオでは、plugin-manifest.xml
にunresolved-external
要素を公開します。avpack
はこの要素下のファイルをチェックしませんが、デプロイ時に$OH/av/dropins
フォルダにこれらのファイルが含まれない場合、avpack
が収集プラグインのデプロイに失敗します。
次の例では、foo.jar
は外部依存です。
<unresolved-external> <file>foo.jar</file> </unresolved-external>
デプロイ中に、avpack
は、ファイルfoo.jar
がAudit Vault Serverの$OH/av/dropins
フォルダに存在するかどうかを確認します。ファイルがない場合、avpack
は収集プラグインのデプロイに失敗し、外部依存が満たされていないことを示します。
この問題を解決するには、ユーザーはファイルを取得して、$OH/av/dropins
フォルダで使用可能にする必要があります。これで、avpack
は、収集プラグインを正常にデプロイできます。
収集プラグインの新しいバージョンを作成する場合、簡単にプラグインして、既存のバージョンを容易に置き換えることができます。
avcli
コマンドライン・ツールを使用して、既存の収集プラグインを新しいバージョンに更新するための『Oracle Audit Vault and Database Firewall管理者ガイド』で説明されているDEPLOY
PLUGIN
コマンドを使用できます。収集プラグインは性質上累積されます。すべての必要なファイルが作成および更新されます。
avcli
ツールおよび『Oracle Audit Vault and Database Firewall管理者ガイド』で説明されているUNDEPLOY PLUGIN
コマンドを使用して、収集プラグインを削除またはアンデプロイできます。このコマンドはアトミック、つまりすべてまたはゼロのトランザクションであるため、高度なシステムの安定性を維持できます。
plugin-manifest.xml
ファイルは、収集プラグインを説明して次の要素および属性を定義するコアXMLファイルです。
plugin要素は、次の属性を持つプラグイン・オブジェクトを表します。
Name: 収集プラグインの記述名。
version: 収集プラグインの更新ごとにバージョンを更新し、順序付けスキームに基づいて単調に増加します。たとえば、AVDFは、ピリオドで区切られた5つの数値で構成されるバージョニング・スキームを使用します: majr.minr.minr.patch.hotfix
。
provider: 通常企業または組織のプロバイダの名前。
copyright: 収集プラグインの著作権表示。
TargetVersion: 収集プラグインと互換性があるOracle Audit Vault and Database Firewallバージョン。min属性は、ターゲットの最低バージョンを表します。
extensionSet: 一連のextensionPoint
。
ExtensionPoint: 各extensionPoint
は、収集プラグインによって拡張されるAVDFの領域を一意に識別します。現在、AVDFは、type
属性で指定されている1つの拡張ポイントsecuredTargetType
をサポートします。
fileList: 収集プラグインとともに提供されるすべてのファイルのリスト。
jars: 要素file
で拡張子.jar
を持つJavaファイルを含むディレクトリ。
templates: 要素file
で収集プラグインのマッパー・ファイルを含むディレクトリ。
bin: 要素file
で通常.exe
が末尾に付く実行可能ファイルを含むディレクトリ。
config: 要素file
でプラグイン固有の構成ファイルを含むディレクトリ。
shell: 要素file
でシェルまたはバッチ・コマンド・ファイルを含むディレクトリ。
patch: 要素file
で収集プラグインのイベント・パッチを含むディレクトリ。
unresolved-external: なんらかの理由で収集プラグインとともにパッケージ化できないが実行時に必要なファイルを含むディレクトリ。パッケージ化には成功しますが、これらのファイルがOracle Audit Vault Serverの$OH/av/dropins
フォルダで使用可能になるまでプラグインのデプロイに失敗します。これらのファイルは要素file
にあります。詳細は、「外部依存」を参照してください。
securedTargetTypeInfo: これは、この収集プラグインがサポートするソース・タイプを示す必須フィールドです。この要素の名前属性を入力して、ソース・タイプを指定します。
trailInfo: 収集プラグインがサポートするこのソース・タイプの監査証跡のタイプを示す必須フィールド。
trailType: このエントリで記述される証跡のタイプを示す必須フィールド。Oracle Audit Vault and Database Firewall 12.1.1は、TABLE
、DIRECTORY
、TRANSACTIONLOG
、SYSLOG
およびEVENTLOG
の証跡のタイプをサポートします。
trailType
は任意の文字列も指定でき、その場合はカスタム証跡タイプとして処理されます。
trailLocation: 証跡の場所を指定します。TABLE
およびCUSTOM
タイプの証跡にのみ適用可能です。このフィールドは他の証跡タイプに対して設定を禁止され、設定すると無視されます。
className: この証跡から監査データを取得するタスクを処理するJavaクラスを指定します。次の要素を使用します。
- データベース表の収集プラグインのoracle.av.platform.agent.collfwk.ezcollector.table.DatabaseTableCollector
。
- XMLファイルの収集プラグインのoracle.av.platform.agent.collfwk.ezcollector.xml.XMLFileCollector
。
同じソース・タイプの異なるソース・バージョンの監査証跡を処理するには、srcVersion
属性をオプションで設定できます。
eventPatch: これは、収集プラグインのデプロイの一部として適用する必要があるイベント・パッチを含むオプション・フィールドです。これらのパッチは、eventPatch
要素内で、ファイル名としてname
属性と、パッチを適用する順序を示すorder
属性を指定しています。
追加するイベント属性は、Oracle Audit Vault and Database Firewallの開発で生成されるパッチを通じて拡張されます。パートナ開発者は、Oracle Audit Vaultイベント・ディクショナリに追加する特定のイベントおよび属性または両方をリクエストできます。リクエストは正当であるとコア開発チームが判断した場合、パッチを発行する可能性があります。プラグインのデプロイ中にアプリケーションの収集プラグインを使用して、これらのパッチをバンドルできます。
関連項目: 特定の収集プラグインのマニフェスト・プラグイン・ファイルのサンプルについては、次を参照してください。 |
avpack
ツールは、コード・ファイル、構成ファイルなどの様々な収集プラグイン・オブジェクトをパッケージ化するJavaで記述されたコマンドライン・ベース・ツールです。
「監査収集プラグインのディレクトリ構造」で推奨されているディレクトリ構造に従って、収集プラグイン・アーティファクトを配置する必要があります。次に、avpack
を使用して、収集プラグイン・パッケージを生成できます。
avpack
ツールがアクセスできるディレクトリに収集プラグイン・ファイルをステージングできます。avpack
ツールはディレクトリ構造を検証し、plugin-manifest.xml
ファイルを解析および検証します。plugin-manifest.xml
で指定されたすべてのファイルが対応するディレクトリにステージングされることの検証など、基本的な健全性チェックも実行できます。
plugin-manifest.xml
ファイルを使用して、収集プラグインが実行する必要があるキー・ファイルを指定します。avpack
ユーティリティはこれらのファイルの存在をチェックしますが、stagedir
に含まれるすべてを圧縮するため、avpack
で検証する必要がないかぎり、各ファイルをリストする必要はありません。
検証が完了すると、ツールは、ファイルをOracle Audit Vault and Database Firewallのデプロイに適した.zip
プラグイン・パッケージにパッケージ化します。
使用方法
avpack -stagedir <directory name> -o <archive filename> [-l <loglevel> ]
説明:
directory
: 収集プラグイン・アーティファクトがステージングされるディレクトリ。このディレクトリのコンテンツは、生成されたプラグイン・アーカイブにアーカイブされます。
archive filename
: 生成されたプラグイン・アーカイブ・ファイルの名前。.zip
拡張子を持つ必要があります(たとえば、myplugin.zip
など)。
log level
: オプション: ログ・レベルを指定されたレベルに設定します。サポートされているログ・レベルは、INFO
、WARNING
、ERROR
およびDEBUG
です。デフォルトのログ・レベルはINFO
です。
詳細なヘルプは、avpack -h
出力を参照してください。