SA_POLICY_ADMIN.APPLY_TABLE_POLICYは、指定されたポリシーをテーブルに追加するために使用します。
ポリシータグ列が存在しない場合、それをテーブルに追加し、NULLに設定します。ポリシーを適用すると自動的に有効になります。テーブルオプション、タグ機能、または述語を変更するには、まずそのポリシーを削除してから、再度適用する必要があります。
機能の適用範囲
この内容はOceanBaseデータベースEnterprise Editionにのみ適用されます。OceanBaseデータベースCommunity EditionはMySQLモードのみを提供します。
構文
SA_POLICY_ADMIN.APPLY_TABLE_POLICY (
policy_name IN VARCHAR,
schema_name IN VARCHAR,
table_name IN VARCHAR,
table_options IN VARCHAR := NULL,
label_function IN VARCHAR := NULL,
predicate IN VARCHAR := NULL);
パラメータの説明
パラメータ |
説明 |
|---|---|
| policy_name | ポリシーを指定します。既存のポリシーを検索する場合は、ALL_SA_POLICIES データディクショナリビューの POLICY_NAME 列を照会してください。 |
| schema_name | ポリシーで保護されているテーブルが存在するスキーマ。 |
| table_name | ポリシーで保護されているテーブル。 |
| table_options | このテーブルで使用されるポリシー実行オプションのリスト(カンマ区切り)。 |
| label_function | 文字列呼び出し関数を返すラベル値を返します。デフォルト値として使用されます。 |
| predicate | ラベルに基づく述語と組み合わせて使用する追加の述語(AND または OR を使用)。 |
例
以下のステートメントは、shield_agent_policyポリシーをSchema FURY内のMISSION_LISTテーブルに適用します。
BEGIN
SA_POLICY_ADMIN.APPLY_TABLE_POLICY(
policy_name => 'shield_agent_policy',
schema_name => 'FURY',
table_name => 'MISSION_LIST');
END;
/