Enterprise Managerには、即時利用可能な多数のポリシーが用意されていますが、必要に応じて、独自の監視ニーズを満たす追加のポリシーを定義できます。Enterprise Managerでは、MGMT_USER_DEFINED_POLICYパッケージという形でこの機能を提供しています。
MGMT_USER_DEFINED_POLICYパッケージを使用すると、ポリシーの作成と削除、およびターゲットへのポリシーの追加およびターゲットからのポリシーの削除を行えます。
関連項目:
|
この章の内容は次のとおりです。
注意: この章の内容は、PL/SQLパッケージおよびEnterprise Managerポリシーに精通しているユーザーを対象としています。 |
ポリシーは、システムに要求される動作を定義するもので、1つ以上のターゲットまたはグループに関連付けられます。ポリシー・ルールは、条件に対してターゲットからの値をテストする条件式です。たとえば、データベース・プロファイル制限が適切に設定されていることを検証します。
ポリシーはOracle Management Repositoryに対して実行された問合せから取得したデータをテストします。管理対象ターゲットが実際には要求された状態と一致すると判断された場合、つまり、ポリシーのテストによって違反が特定されなかった場合、ポリシーはコンプライアンスであるとみなされます。反対に、1つ以上のポリシー違反があった場合は、ポリシーは非コンプライアンスであるとみなされます。
Enterprise Managerには、即時利用可能なポリシーの拡張機能として、サブプログラムのコンテキストでユーザー定義ポリシーをサポートするMGMT_USER_DEFINED_POLICYパッケージが用意されています。
これらのサブプログラムを使用するには、SQL*Plusを使用して、管理リポジトリ所有者として管理リポジトリ・データベースに接続します。デフォルトの管理リポジトリ所有者はSYSMANです。
MGMT_USER_DEFINED_POLICYパッケージは次のサブプログラムで構成されます。
サブプログラム | 説明 |
---|---|
CREATE_POLICY | ユーザー定義ポリシーを作成します。 |
DELETE_POLICY | ユーザー定義ポリシーを削除します。 |
ADD_POLICY_TO_TARGET | 既存のターゲットにポリシーを追加します。 |
REMOVE_POLICY_FROM_TARGET | 既存のターゲットからポリシーを削除します。 |
次に、サブプログラムで使用される定数およびデータ型について説明します。
MGMT_USER_DEFINED_POLICYパッケージによって定義される定数を次に示します。これらの定数は、指定されたサブプログラムをコールする際に使用できます。表8-1を参照してください。
表8-1 MGMT_USER_DEFINED_POLICYパッケージで使用される定数
定数 | 説明 |
---|---|
カテゴリ |
タイプの異なるポリシー |
G_CATEGORY_FAULT |
コンポーネントの機能停止、または一部のコンポーネントやユーザーが処理を正常に実行できないことを示すエラーの発生(たとえばデータベースの停止) |
G_CATEGORY_WORKLOAD_VOL |
ユーザー数またはシステムに対して実行されるバッチ・ジョブ数に比例して発生するシステム上のワークロード(たとえばユーザー・コール数) |
G_CATEGORY_WORKLOAD_TYPE |
需要とは無関係の、システム上のワークロードのタイプ(たとえばCPU使用率) |
G_CATEGORY_PERFORMANCE |
システムのパフォーマンス(たとえばレスポンス時間) |
G_CATEGORY_CAPACITY |
固定リソースの使用量(たとえば表領域の使用量) |
G_CATEGORY_CONFIGURATION |
推奨されるベスト・プラクティスの構成に反するターゲットの構成(たとえば制御ファイル数の不足) |
G_CATEGORY_SECURITY |
セキュリティの設定および問題(たとえばオープン・ポート) |
G_CATEGORY_STORAGE |
記憶域(たとえば永続表領域および一時表領域) |
G_CATEGORY_UNCLASSIFIED |
ポリシーが特定のカテゴリに分類されない場合に使用するデフォルト・カテゴリ |
違反の重大度レベル |
違反の深刻度 |
G_SEVERITY_INFORMATIONAL |
違反の事実を提供します。 |
G_SEVERITY_WARNING |
違反に適時に対応しないと深刻な結果につながることを警告します。 |
G_SEVERITY_CRITICAL |
違反にすぐに対処するように要求します。 |
パラメータ・データ型 |
ポリシー関連のパラメータのデータ型 |
G_PARAM_TYPE_NUMBER |
Number |
G_PARAM_TYPE_STRING |
String |
ターゲット・タイプ |
Enterprise Managerで監視されるエンティティ |
G_HOST_TARGET_TYPE |
ホスト |
G_DATABASE_TARGET_TYPE |
Oracleデータベース・インスタンス |
G_LISTENER_TARGET_TYPE |
Oracleリスナー |
G_CLUSTER_TARGET_TYPE |
独立したサーバーのグループ |
G_RAC_DATABASE_TARGET_TYPE |
Real Application Cluster(RAC)データベース・インスタンス |
G_REDUNDANCY_GROUP_TARGET_TYPE |
1つのユニットとして一括で機能する同じタイプのメンバーを含むグループ |
G_COMPOSITE_TARGET_TYPE |
ある目的(たとえばビジネス機能)のためにグループ化された多数のターゲット |
G_HOST_GROUP_TARGET_TYPE |
多数のホストで構成されるグループ |
G_DATABASE_GROUP_TARGET_TYPE |
多数のOracleデータベース・インスタンスで構成されるグループ |
G_IAS_TARGET_TYPE |
Oracle Application Server |
G_WEBSITE_TARGET_TYPE |
Webアプリケーション |
G_FORMSAPP_TARGET_TYPE |
Oracle Forms |
G_HTTP_SERVER_TARGET_TYPE |
Oracle HTTP Server |
G_WEBCACHE_TARGET_TYPE |
OracleAS Web Cache |
G_OC4J_TARGET_TYPE |
Oracle Application Server Containers for J2EE |
G_BC4J_TARGET_TYPE |
ADF Business Components for Java |
G_LDAP_TARGET_TYPE |
Lightweight Directory Access Protocol(LDAP) |
G_PORTAL_TARGET_TYPE |
OracleAS Portal |
G_APPLICATION_TARGET_TYPE |
Oracleアプリケーション |
G_APPS_SYSTEM_TARGET_TYPE |
Oracleアプリケーション・システム |
G_ASM_TARGET_TYPE |
自動ストレージ管理 |
条件演算子 |
監視対象メトリック値の比較対象境界値であるしきい値を操作する際に使用します。 |
G_THRESHOLD_EQ |
等しい(=) |
G_THRESHOLD_LT |
より小さい(<) |
G_THRESHOLD_GT |
より大きい(>) |
G_THRESHOLD_LE |
以下(< =) |
G_THRESHOLD_GE |
以上(> =) |
G_THRESHOLD_NE |
等しくない(≠) |
G_THRESHOLD_CONTAINS |
部分一致 |
G_THRESHOLD_MATCH |
完全一致 |
MGMT_USER_DEFINED_POLICYサブプログラムでは、表8-2に示すデータ型が使用されます。
表8-2 MGMT_USER_DEFINED_POLICYパッケージで使用されるデータ型
型 | 説明 |
---|---|
UDP_PARAMETERS |
ユーザー定義ポリシー(UDP)で使用されるパラメータの集まりを表します。 |
UDP_PARAMETER |
単一のパラメータを表します。 |
ユーザー定義ポリシーを作成する際には、UDP_PARAMETERSオブジェクトを使用してパラメータ情報が渡されます。
これらのPL/SQLタイプを使用して、ユーザー定義ポリシーで使用されるパラメータのリストを表します。
構文
TYPE UDP_PARAMETER IS RECORD ( param_name VARCHAR2(64), param_type NUMBER(1), threshold_value VARCHARS(4000) ); TYPE UDP_PARAMETERS IS TABLE of UDP_PARAMETER;
パラメータ
パラメータ | 説明 |
---|---|
param_name | 作成するパラメータの名前 |
param_type | パラメータのタイプ
次に例を示します。 G_PARAM_TYPE_NUMBER G_PARAM_TYPE_STRING |
threshold_value | パラメータのデフォルト値 |
ユーザー定義ポリシーの作成手順の一部として、テストする情報を管理リポジトリから抽出するためのSQLを指定します。Enterprise Managerには、ベース表から読み取らずに管理リポジトリからデータを安全に抽出するために使用できる管理ビューが用意されています。
管理リポジトリ・ビューを使用すると、次の利点があります。
将来のリリースで発生する可能性がある管理リポジトリ・スキーマへの変更から問合せが保護されます。
ポリシー定義が引き続き機能することが保証されます。
管理リポジトリ・ビューの完全なリストは、第9章「管理リポジトリ・ビュー」に記載されています。
CREATE_POLICYプロシージャは、ユーザー定義ポリシーを作成します。ポリシーの一部として、次のものを識別する必要があります。
ポリシーの名前
評価対象のデータ
現在のデータの状態をテストするための(オプションでパラメータ化される)テスト
テストに代入するデフォルトのパラメータ値(存在する場合)
スクリプトが実行されると、ポリシーは自動的にポリシー・ライブラリ格納され、表示可能になります。
CREATE_POLICYプロシージャでサポートされるテスト
次のタイプのテストがCREATE_POLICYプロシージャでサポートされます。
しきい値条件または単純条件
選択された単一の列の値が、指定されたテスト演算子を使用してテストされます。
SQL式
リテラル、選択した列およびポリシー・パラメータへの参照を含むことができるSQL式。選択した列およびポリシー・パラメータはバインド変数として名前が付けれられます。また、任意の組込みSQLファンクションを使用できます。次の例では、SQLファンクション(length)、選択した列(PASSWORD)およびポリシー・パラメータ(MIN_PWD_LENGTH)が使用されています。
length(:PASSWORD) <= :MIN_PWD_LENGTH
次の構文は、ポリシーの作成に使用されるプロシージャを示しています。ポリシーが作成されなかった場合は、RAISE_APPLICATION_ERRORプロシージャを使用してエラー・メッセージが表示されます。エラー番号およびメッセージは、Oracleエラーのように、処理のためにトラップできます。
構文
しきい値条件または単純条件
PROCEDURE create_policy ( p_policy_name IN VARCHAR2, p_target_type IN VARCHAR2, p_sql_text IN VARCHAR2, p_column_name IN VARCHAR2, p_test_operator IN VARCHAR2, p_threshold_value IN VARCHAR2, p_threshold_data_type IN NUMBER DEFAULT G_PARAM_TYPE_NUMBER, p_num_keys IN NUMBER DEFAULT 1, p_description IN VARCHAR2 DEFAULT ' ', p_impact IN VARCHAR2 DEFAULT ' ', p_recommendation IN VARCHAR2 DEFAULT ' ', p_severity_level IN NUMBER DEFAULT G_SEVERITY_INFORMATIONAL, p_category IN VARCHAR2 DEFAULT G_CATEGORY_UNCLASSIFIED, p_url_link IN VARCHAR2 DEFAULT NULL, p_violation_message IN VARCHAR2 DEFAULT NULL, p_clear_message IN VARCHAR2 DEFAULT NULL, p_eval_interval IN NUMBER DEFAULT 24 );
SQL式
PROCEDURE create_policy ( p_policy_name IN VARCHAR2, p_target_type IN VARCHAR2, p_sql_text IN VARCHAR2, p_test IN VARCHAR2, p_parameters IN UDP_PARAMETERS DEFAULT NULL, p_num_keys IN NUMBER DEFAULT 1, p_description IN VARCHAR2 DEFAULT ' ', p_impact IN VARCHAR2 DEFAULT ' ', p_recommendation IN VARCHAR2 DEFAULT ' ', p_severity_level IN NUMBER DEFAULT G_SEVERITY_INFORMATIONAL, p_category IN VARCHAR2 DEFAULT G_CATEGORY_UNCLASSIFIED, p_url_link IN VARCHAR2 DEFAULT NULL, p_violation_message IN VARCHAR2 DEFAULT NULL, p_clear_message IN VARCHAR2 DEFAULT NULL, p_eval_interval IN NUMBER DEFAULT 24 );
パラメータ
パラメータ | 説明 |
---|---|
p_policy_name | 作成するポリシーの名前 |
p_target_type | このポリシーが適用されるターゲットのタイプ
次に例を示します。 G_HOST_TARGET_TYPE(ホスト) G_DATABASE_TARGET_TYPE(Oracleデータベース・インスタンス) |
p_sql_text | テストするデータを管理リポジトリから取得するためのSQL
指定するSQLは、次の要件を満たす必要があります。
|
p_column_name | p_threshold_valueの比較対象となる、選択したリストの列の名前 |
p_test_operator | 実行する比較のタイプ。有効な値は次のとおりです。 G_THRESHOLD_EQ G_THRESHOLD_NE G_THRESHOLD_LT G_THRESHOLD_LE G_THRESHOLD_GT G_THRESHOLD_GE G_THRESHOLD_CONTAINS G_THRESHOLD_MATCH |
p_threshold_value | 比較の実行対象となる値 |
p_threshold_data_type | しきい値のデータ型。有効な値は次のとおりです。 G_PARAM_TYPE_NUMBER G_PARAM_TYPE_STRING |
p_test | ポリシー違反を特定するためにp_sql_textによって戻された行に適用するテスト。このテストには任意の有効なSQL式を使用できます。また、p_sql_textからの選択リストの列またはp_parametersで指定したパラメータ、もしくはその両方を参照できます。列の選択リストの列またはパラメータを参照するには、名前の接頭辞としてコロン(:)を使用します。 |
p_parameters | ポリシーを評価する際に使用するパラメータのリストおよびデフォルト値を含むタプル |
p_num_keys | キー列である選択リストの列、つまりp_sql_textによって戻された行を一意に識別する列の数 |
p_description | ポリシーを説明するテキストが含まれます。 |
p_impact | このポリシーが重要である理由を示すテキストを提供します。 |
p_recommendation | ターゲットにポリシーのコンプライアンスを回復させる方法についての情報が含まれます。 |
p_severity_level | 違反の重大度レベル。有効な値は次のとおりです。 G_SEVERITY_INFORMATIONAL G_SEVERITY_WARNING G_SEVERITY_CRITICAL |
p_category | ポリシーのカテゴリ。有効な値は次のとおりです。 G_CATEGORY_FAULT G_CATEGORY_WORKLOAD_VOL G_CATEGORY_WORKLOAD_TYPE G_CATEGORY_PERFORMANCE G_CATEGORY_CAPACITY G_CATEGORY_CONFIGURATION G_CATEGORY_SECURITY G_CATEGORY_STORAGE G_CATEGORY_UNCLASSIFIED |
p_url_link | このポリシーに関する追加の詳細情報に使用するURL |
p_violation_message | 違反とともに記録されるメッセージ。電子メールやページングなど、新しい違反を検出した結果として発生する通知に使用されます。このメッセージは、p_sql_textからの選択リストの列またはp_parametersで指定したパラメータ、もしくはその両方を参照できます。列の選択リストの列またはパラメータを参照するには、名前をパーセント記号(%)で囲みます。 |
p_clear_message | 違反をクリアすると記録されるメッセージ。電子メールやページングなど、新しい違反を検出した結果として発生する通知に使用されます。このメッセージは、p_sql_textからの選択リストの列またはp_parametersで指定したパラメータ、もしくはその両方を参照できます。列の選択リストの列またはパラメータを参照するには、名前をパーセント記号(%)で囲みます。 |
p_eval_interval | 評価間隔の式(時間数) |
例
これらの例は、ポリシーの作成方法を示しています。
例8-1 十分な制御ファイルのしきい値
DECLARE l_sql VARCHAR2(2000); BEGIN l_sql := 'SELECT target_guid, control_file_count ' || 'FROM ' || '(SELECT target_guid, COUNT(file_name) control_file_count ' || 'FROM mgmt$db_controlfiles ' || 'GROUP BY target_guid)'; MGMT_USER_DEFINED_POLICY.CREATE_POLICY ( p_policy_name => 'Insufficient Control Files', p_target_type => mgmt_user_defined_policy.G_DATABASE_TARGET_TYPE, p_sql_text => l_sql, p_column_name => 'control_file_count', p_test_operator => mgmt_user_defined_policy.G_THRESHOLD_LT, p_threshold_value => 2, p_threshold_data_type => mgmt_user_defined_policy.G_PARAM_TYPE_NUMBER, p_num_keys => 1, -- target_guid is key column p_description => 'Ensures sufficient control files', p_impact => 'The control file is one of the most important files '|| 'in an Oracle database. It maintains many physical ' || 'characteristics and important recovery information ' || 'about the database. If you lose the only copy of the ' || 'control file due to a media error, there will be ' || 'unnecessary down time and other risks.' p_recommendation => 'Use at least two control files that are ' || 'multiplexed on different disks.', p_severity_level => mgmt_user_defined_policy.G_SEVERITY_CRITICAL, p_category => mgmt_user_defined_policy.G_CATEGORY_CONFIGURATION, p_violation_message => 'Insufficient control files: %control_file_count%', p_clear_message => 'Sufficient control files' ); COMMIT; END; /
例8-2 UDPパラメータを使用した十分な制御ファイル
DECLARE l_sql VARCHAR2(2000); l_test VARCHAR2(2000); l_parameters mgmt_user_defined_policy.udp_parameters; BEGIN l_sql := 'SELECT target_guid, control_file_count ' || 'FROM ' || '(SELECT target_guid, COUNT(file_name) control_file_count ' || 'FROM mgmt$db_controlfiles ' || 'GROUP BY target_guid)'; l_test := ':control_file_count < :min_control_file_count'; l_parameters := mgmt_user_defined_policy.udp_parameters(); l_parameters.extend(1); l_parameters(1).param_name := 'min_control_file_count'; l_parameters(1).param_type := mgmt_user_defined_policy.G_PARAM_TYPE_NUMBER; l_parameters(1).threshold_value :=2; MGMT_USER_DEFINED_POLICY.CREATE_POLICY ( p_policy_name => 'Insufficient Control Files', p_target_type => mgmt_user_defined_policy.G_DATABASE_TARGET_TYPE, p_sql_text => l_sql, p_test => l_test, p_parameters => l_parameters, p_num_keys => 1, -- target_guid is key column p_description => 'Ensures sufficient control files', p_impact => 'The control file is one of the most important files ' || 'in an Oracle database. It maintains many physical ' || 'characteristics and important recovery information ' || 'about the database. If you lose the only copy of the ' || 'control file due to a media error, there will be ' || 'unnecessary down time and other risks.', p_recommendation => 'Use at least two control files that are ' || 'multiplexed on different disks.', p_severity_level => mgmt_user_defined_policy.G_SEVERITY_CRITICAL, p_category => mgmt_user_defined_policy.G_CATEGORY_CONFIGURATION, p_violation_message => 'Insufficient control files: %control_file_count%', p_clear_message => 'Sufficient control files' ); COMMIT; END; /
例8-3 データ・ディクショナリ保護のSQL式
DECLARE l_sql VARCHAR2(2000); l_test VARCHAR2(2000); BEGIN l_sql := 'SELECT target_guid, name, value ' || 'FROM mgmt$db_init_params ' || 'WHERE name =''O7_DICTIONARY_ACCESSIBILITY'''; l_test := 'UPPER(NVL(:value, ''TRUE'')) = ''TRUE'''; MGMT_USER_DEFINED_POLICY.CREATE_POLICY ( p_policy_name => 'Data Dictionary Protected', p_target_type => mgmt_user_defined_policy.G_DATABASE_TARGET_TYPE, p_sql_text => l_sql, p_test => l_test, p_num_keys => 1, -- target_guid is key column p_description => 'Ensures data dictionary protection is enabled', p_impact => 'Setting the 07_DICTIONARY_ACCESSIBILITY to TRUE ' || 'allows users with ANY system privileges to access ' || 'the data dictionary. As a result, these user ' || 'accounts can be exploited to gain unauthorized ' || 'access to data. Instead the data dictionary should ' || 'be protected such that only those authorized users ' || 'making DBA-privileged connections can use the ANY ' || 'system privilege to access the data dictionary.', p_recommendation => 'Set O7_DICTIONARY_ACCESSIBILITY to TRUE', p_severity_level => mgmt_user_defined_policy.G_SEVERITY_CRITICAL, p_category => mgmt_user_defined_policy.G_CATEGORY_SECURITY, p_violation_message => 'Data dictionary is not protected', p_clear_message => 'Data dictionary is protected', p_eval_interval => 12 ); COMMIT; END; /
ユーザー定義ポリシーを既存のターゲットに追加する方法は多数あります。次のような方法があります。
ユーザー定義のポリシーを既存のターゲットに迅速に追加するには、「メトリックとポリシー設定」UIページを使用します。
Grid Controlのホームページで「ターゲット」タグをクリックします。
結果ページで、ユーザー定義ポリシーを追加するターゲットのターゲット・タイプをクリックします。
ユーザー定義ポリシーを追加するターゲットの名前を選択します。
ターゲットの「ホーム」結果ページで「関連リンク」セクションまでスクロールし、「メトリックとポリシー設定」をクリックします。
「ポリシー」サブタブを選択して「ポリシーの追加」をクリックします。
ポリシー・ライブラリから追加するポリシー・ルールを選択して「続行」をクリックします。
確認ページで「はい」をクリックして、ターゲットにポリシー・ルールを追加します。さらに、「ポリシー」ページで「OK」をクリックします。これを行わないと変更が有効になりません。
次のプロシージャは、既存のユーザー定義ポリシーを管理リポジトリにすでに存在するターゲットに関連付けます。この関連が作成されなかった場合は、RAISE_APPLICATION_ERRORプロシージャを使用してエラー・メッセージが表示されます。エラー番号およびメッセージは、Oracleエラーのように、処理のためにトラップできます。
構文
PROCEDURE add_policy_to_target ( p_policy_name IN VARCHAR2, p_target_type IN VARCHAR2, p_target_name IN VARCHAR2 );
パラメータ
パラメータ | 説明 |
---|---|
p_policy_name | 追加するポリシーの名前 |
p_target_type | このポリシーが適用されるターゲットのタイプ
次に例を示します。 G_HOST_TARGET_TYPE(ホスト) G_DATABASE_TARGET_TYPE(Oracleデータベース・インスタンス) |
p_target_name | ターゲットの名前 |
例
これらの例は、ターゲットにポリシーを追加する方法を示しています。
例8-4 1つのターゲットへのポリシーの追加
BEGIN MGMT_USER_DEFINED_POLICY.ADD_POLICY_TO_TARGET ( p_policy_name => 'Insufficient Control Files', p_target_type => mgmt_user_defined_policy.G_DATABASE_TARGET_TYPE, p_target_name => 'Finance' ); COMMIT; END; /
例8-5 既存のすべてのターゲットへのポリシーの追加
DECLARE l_target_names MGMT_MEDIUM_STRING_ARRAY; BEGIN SELECT target_name BULK COLLECT INTO l_target_names FROM mgmt$target WHERE target_type = mgmt_user_defined_policy.G_DATABASE _TARGET_TYPE; IF (l_target_names IS NOT NULL) and (l_target_names.COUNT > 0) THEN FOR i in 1..l_target_names.COUNT LOOP mgmt_user_defined_policy.add_policy_to_target ( p_policy_name => 'Insufficient Control Files', p_target_type => mgmt_user_defined_policy.G_DATABASE_TARGET_TYPE, p_target_name => l_target_names(i) ); END LOOP; COMMIT; END IF; END; /
このプロシージャは、既存のユーザー定義ポリシーを削除します。ユーザー定義ポリシーの削除の一部として、次の処理が行われます。
ポリシーとターゲットのすべての関連が自動的に削除されます。
ポリシーの既存の評価結果がすべて削除されます。
既存の監視テンプレートに含まれるこのポリシーの参照がすべて削除されます。
ポリシー・ライブラリからポリシーが削除されます。
ポリシーが削除されなかった場合は、RAISE_APPLICATION_ERRORプロシージャを使用してエラー・メッセージが表示されます。エラー番号およびメッセージは、Oracleエラーのように、処理のためにトラップできます。
管理リポジトリ所有者には、ポリシーを削除する権限があります。
構文
PROCEDURE delete_policy( p_policy_name IN VARCHAR2, p_target_type IN VARCHAR2);
パラメータ
パラメータ | 説明 |
---|---|
p_policy_name | 削除するポリシーの名前 |
p_target_type | このポリシーが適用されるターゲットのタイプ
次に例を示します。 G_HOST_TARGET_TYPE(ホスト) G_DATABASE_TARGET_TYPE(Oracleデータベース・インスタンス) |
例
次の例は、ポリシーの削除方法を示しています。
ユーザー定義ポリシーを既存のターゲットから削除する方法は2つあります。
ユーザー定義のポリシーを既存のターゲットから迅速に削除するには、「メトリックとポリシー設定」UIページを使用します。
Grid Controlのホームページで「ターゲット」タグをクリックします。
結果ページで、ユーザー定義ポリシーを削除するターゲットのターゲット・タイプをクリックします。
ユーザー定義ポリシーを削除するターゲットの名前を選択します。
ターゲットの「ホーム」結果ページで「関連リンク」セクションまでスクロールし、「メトリックとポリシー設定」をクリックします。
「ポリシー」サブタブを選択して「削除」をクリックします。
削除するポリシー・ルールを選択して「続行」をクリックします。
確認ページで「はい」をクリックして、ターゲットからポリシー・ルールを削除します。さらに、「ポリシー」ページで「OK」をクリックします。これを行わないと変更が有効になりません。
次のプロシージャは、既存のユーザー定義ポリシーを管理リポジトリに存在するターゲットから削除するために使用されます。関連が削除されなかった場合は、RAISE_APPLICATION_ERRORプロシージャを使用してエラー・メッセージが表示されます。エラー番号およびメッセージは、Oracleエラーのように、処理のためにトラップできます。
構文
PROCEDURE remove_policy_from_target ( p_policy_name IN VARCHAR2, p_target_type IN VARCHAR2, p_target_name IN VARCHAR2 );
パラメータ
パラメータ | 説明 |
---|---|
p_policy_name | 削除するポリシーの名前 |
p_target_type | このポリシーが適用されるターゲットのタイプ
次に例を示します。 G_HOST_TARGET_TYPE(ホスト) G_DATABASE_TARGET_TYPE(Oracleデータベース・インスタンス) |
p_target_name | ターゲットの名前 |
例
次の例は、ユーザー定義ポリシーを既存のターゲットから削除する方法を示しています。