XS_DATA_SECURITYパッケージ
XS_DATA_SECURITY
パッケージには、データ・セキュリティ・ポリシー、関連データ・レルム制約、列制約およびACLパラメータを作成、管理、削除するためのプロシージャが含まれます。
XS_DATA_SECURITYパッケージのセキュリティ・モデル
XS_DATA_SECURITY
パッケージは、SYS
スキーマに作成されます。すべてのスキーマのACL、セキュリティ・クラス、セキュリティ・ポリシーなどのスキーマ・オブジェクトを管理できるADMIN_ANY_SEC_POLICY
がDBA
ロールに付与されます。また、ADMIN_ANY_SEC_POLICY
を付与されているユーザーは、ENABLE_OBJECT_POLICY
、DISABLE_OBJECT_POLICY
、APPLY_OBJECT_POLICY
およびREMOVE_OBJECT_POLICY
プロシージャをコールできます。
ユーザーは、スキーマに対するRESOURCE
ロールを付与されている場合に、自身のスキーマ内のスキーマ・オブジェクトを管理できます。RESOURCE
ロールおよびXS_RESOURCE
アプリケーション・ロールには、アプリケーション内のポリシー管理を達成するために、スキーマ内のスキーマ・オブジェクトの管理および権限付与されたスキーマ内のポリシー・アーティファクトの管理に必要な、ADMIN_SEC_POLICY
権限が含まれます。
APPLY_SEC_POLICY
権限を付与されたユーザーは、スキーマに対するポリシー強制を管理できます。この権限を持つユーザーは、権限付与されたスキーマ内のポリシー強制を管理して、アプリケーション内のポリシー管理を達成できます。
オブジェクト・タイプ、コンストラクタ・ファンクション、シノニムおよび付与
このパッケージには、次のオブジェクト・タイプ、コンストラクタ・ファンクション、シノニムおよびGRANT
文が定義されています。
-- Create a type for key CREATE OR REPLACE TYPE XS$KEY_TYPE AS OBJECT ( primary_key VARCHAR2(130), foreign_key VARCHAR2(4000), -- Foreign key type; 1 = col name, 2 = col value foreign_key_type NUMBER, -- Constructor function CONSTRUCTOR FUNCTION XS$KEY_TYPE (primary_key IN VARCHAR2, foreign_key IN VARCHAR2, foreign_key_type IN NUMBER) RETURN SELF AS RESULT, MEMBER FUNCTION GET_PRIMARY_KEY RETURN VARCHAR2, MEMBER FUNCTION GET_FOREIGN_KEY RETURN VARCHAR2, MEMBER FUNCTION GET_FOREIGN_KEY_TYPE RETURN NUMBER, ); CREATE OR REPLACE TYPE XS$KEY_LIST AS VARRAY(1000) OF XS$KEY_TYPE; CREATE OR REPLACE TYPE XS$REALM_CONSTRAINT_TYPE AS OBJECT ( -- Member variables realm_type NUMBER, -- Member evaluation rule realm VARCHAR2(4000), -- acl list of instance set acl_list XS$NAME_LIST, -- isStatic variable for instance set. Stored as INTEGER. No boolean datatype -- for objects. False is stored as 0 and TRUE is stored as 1 is_static INTEGER, -- Indicate if the realm is parameterized. parameterized INTEGER, -- parent schema name for inherited from parent_schema VARCHAR2(130), -- parent object name for inherited from parent_object VARCHAR2(130), -- keys for inherited from key_list XS$KEY_LIST, -- when condition for inherited from when_condition VARCHAR2(4000), -- Constructor function - row_level realm CONSTRUCTOR FUNCTION XS$REALM_CONSTRAINT_TYPE (realm IN VARCHAR2, acl_list IN XS$NAME_LIST, is_static IN BOOLEAN := FALSE) RETURN SELF AS RESULT, -- Constructor function - parameterized row_level realm CONSTRUCTOR FUNCTION XS$REALM_CONSTRAINT_TYPE (realm IN VARCHAR2, is_static IN BOOLEAN := FALSE) RETURN SELF AS RESULT, -- Constructor function - master realm CONSTRUCTOR FUNCTION XS$REALM_CONSTRAINT_TYPE (parent_schema IN VARCHAR2, parent_object IN VARCHAR2, key_list IN XS$KEY_LIST, when_condition IN VARCHAR2:= NULL) RETURN SELF AS RESULT, -- Accessor functions MEMBER FUNCTION GET_TYPE RETURN NUMBER, MEMBER FUNCTION GET_REALM RETURN VARCHAR2, MEMBER FUNCTION GET_ACLS RETURN XS$NAME_LIST, MEMBER FUNCTION IS_DYNAMIC_REALM RETURN BOOLEAN, MEMBER FUNCTION IS_STATIC_REALM RETURN BOOLEAN, MEMBER FUNCTION IS_PARAMETERIZED_REALM RETURN BOOLEAN, MEMBER FUNCTION GET_KEYS RETURN XS$KEY_LIST, MEMBER FUNCTION GET_PARENT_SCHEMA RETURN VARCHAR2, MEMBER FUNCTION GET_PARENT_OBJECT RETURN VARCHAR2, MEMBER FUNCTION GET_WHEN_CONDITION RETURN VARCHAR2, MEMBER PROCEDURE SET_REALM(realm IN VARCHAR2), MEMBER PROCEDURE ADD_ACLS(acl IN VARCHAR2), MEMBER PROCEDURE ADD_ACLS(acl_list IN XS$NAME_LIST), MEMBER PROCEDURE SET_ACLS(acl_list IN XS$NAME_LIST), MEMBER PROCEDURE SET_DYNAMIC, MEMBER PROCEDURE SET_STATIC, MEMBER PROCEDURE ADD_KEYS(key IN XS$KEY_TYPE), MEMBER PROCEDURE ADD_KEYS(key_list IN XS$KEY_LIST), MEMBER PROCEDURE SET_KEYS(key_list IN XS$KEY_LIST), MEMBER PROCEDURE SET_PARENT_SCHEMA(parent_schema IN VARCHAR2), MEMBER PROCEDURE SET_PARENT_OBJECT(parent_object IN VARCHAR2), MEMBER PROCEDURE SET_WHEN_CONDITION(when_condition IN VARCHAR2) ); -- Create a list of realm constraint type CREATE OR REPLACE TYPE XS$REALM_CONSTRAINT_LIST AS VARRAY(1000) OF XS$REALM_CONSTRAINT_TYPE; -- Create a type for column(attribute) security CREATE OR REPLACE TYPE XS$COLUMN_CONSTRAINT_TYPE AS OBJECT ( -- column list column_list XS$LIST, -- privilege for column security privilege VARCHAR2(261), -- Constructor function CONSTRUCTOR FUNCTION XS$COLUMN_CONSTRAINT_TYPE (column_list IN XS$LIST, privilege IN VARCHAR2) return SELF AS RESULT, MEMBER FUNCTION GET_COLUMNS RETURN XS$LIST, MEMBER FUNCTION GET_PRIVILEGE RETURN VARCHAR2, MEMBER PROCEDURE ADD_COLUMNS(column IN VARCHAR2), MEMBER PROCEDURE ADD_COLUMNS(column_list IN XS$LIST), MEMBER PROCEDURE SET_COLUMNS(column_list IN XS$LIST), MEMBER PROCEDURE SET_PRIVILEGE(privilege IN VARCHAR2) ); -- Create a list of column constraint for column security CREATE OR REPLACE TYPE XS$COLUMN_CONSTRAINT_LIST IS VARRAY(1000) of XS$COLUMN_CONSTRAINT_TYPE;
XS_DATA_SECURITYサブプログラムの要約
表11-5 XS_DATA_SECURITYサブプログラムの要約
サブプログラム | 簡単な説明 |
---|---|
新規データ・セキュリティ・ポリシーを作成します。 |
|
1つ以上のデータ・レルム制約を既存のデータ・セキュリティ・ポリシーに追加します。 |
|
指定されたデータ・セキュリティ・ポリシーのすべてのデータ・レルム制約を削除します。 |
|
1つ以上の列制約を指定されたデータ・セキュリティ・ポリシーに追加します。 |
|
データ・セキュリティ・ポリシーからすべての列制約を削除します。 |
|
指定されたデータ・セキュリティ・ポリシーのACLパラメータを作成します。 |
|
指定されたデータ・セキュリティ・ポリシーからACLパラメータを削除します。 |
|
指定されたデータ・セキュリティ・ポリシーの説明文字列を設定します。 |
|
データ・セキュリティ・ポリシーを削除します。 |
表11-6 表またはビューでデータ・セキュリティ・ポリシーを管理するためのXS_DATA_SECURITYサブプログラムの要約
サブプログラム | 簡単な説明 |
---|---|
指定された表またはビューのデータ・セキュリティ・ポリシーを有効にします。 |
|
指定された表またはビューのデータ・セキュリティ・ポリシーを無効にします。 |
|
指定された表またはビューを削除せずに、そこからデータ・セキュリティを削除します。 |
|
指定された表またはビューのデータ・セキュリティ・ポリシーを有効または再度有効にします。 |
この項では次のXS_DATA_SECURITYサブプログラムについて説明します。
CREATE_POLICYプロシージャ
CREATE_POLICY
プロシージャは、新規データ・セキュリティ・ポリシーを作成します。
構文
XS_DATA_SECURITY.CREATE_POLICY ( name IN VARCHAR2, realm_constraint_list IN XS$REALM_CONSTRAINT_LIST, column_constraint_list IN XS$COLUMN_CONSTRAINT_LIST := NULL, description IN VARCHAR2 :=NULL) ;
パラメータ
パラメータ | 説明 |
---|---|
|
作成するデータ・セキュリティ・ポリシーの名前。 名前は、 |
|
データ・セキュリティ・ポリシーによって保護される行を決定するデータ・レルム制約のリスト。 |
|
これはオプションです。保護する属性と権限のリスト。 |
|
データ・セキュリティ・ポリシーのオプションの説明。 |
例
次の例は、USER1.EMPLOYEES_DS
というデータ・セキュリティ・ポリシーを作成します。データ・レルム制約を使用して、部門番号60
および100
に関連するデータを保護します。また、SALARY
列(属性)へのアクセスは列制約を使用して制限されます。
DECLARE realm_cons XS$REALM_CONSTRAINT_LIST; column_cons XS$COLUMN_CONSTRAINT_LIST; BEGIN realm_cons := XS$REALM_CONSTRAINT_LIST( XS$REALM_CONSTRAINT_TYPE(realm=> 'DEPARTMENT_ID in (60, 100)', acl_list=> XS$NAME_LIST('HRACL'))); column_cons := XS$COLUMN_CONSTRAINT_LIST( XS$COLUMN_CONSTRAINT_TYPE(column_list=> XS$LIST('SALARY'), privilege=> 'VIEW_SENSITIVE_INFO')); SYS.XS_DATA_SECURITY.CREATE_POLICY( name=>'USER1.EMPLOYEES_DS', realm_constraint_list=>realm_cons, column_constraint_list=>column_cons); END;
APPEND_REALM_CONSTRAINTSプロシージャ
APPEND_REALM_CONSTRAINTS
プロシージャは、1つ以上のデータ・レルム制約を既存のデータ・セキュリティ・ポリシーに追加します。
構文
XS_DATA_SECURITY.APPEND_REALM_CONSTRAINTS ( policy IN VARCHAR2, realm_constraint IN XS$REALM_CONSTRAINT_TYPE); XS_DATA_SECURITY.APPEND_REALM_CONSTRAINTS ( policy IN VARCHAR2, realm_constraint_list IN XS$REALM_CONSTRAINT_LIST);
パラメータ
パラメータ | 説明 |
---|---|
|
データ・レルム制約を追加するデータ・セキュリティ・ポリシーの名前。 名前は、 |
|
データ・セキュリティ・ポリシーに追加するデータ・レルム制約。 |
|
データ・セキュリティ・ポリシーに追加するデータ・レルム制約のリスト。 |
例
次の例は、新規データ・レルム制約をEMPLOYEES_DS
データ・セキュリティ・ポリシーに追加します。
DECLARE realm_cons XS$REALM_CONSTRAINT_TYPE; BEGIN realm_cons := XS$REALM_CONSTRAINT_TYPE(realm=> 'DEPARTMENT_ID in (40, 50)', acl_list=> XS$NAME_LIST('HRACL')); SYS.XS_DATA_SECURITY.APPEND_REALM_CONSTRAINTS( policy=>'EMPLOYEES_DS', realm_constraint=>realm_cons); END;
REMOVE_REALM_CONSTRAINTSプロシージャ
REMOVE_REALM_CONSTRAINTS
プロシージャは、データ・セキュリティ・ポリシーからすべてのデータ・レルム制約を削除します。
構文
XS_DATA_SECURITY.REMOVE_REALM_CONSTRAINTS ( policy IN VARCHAR2);
パラメータ
パラメータ | 説明 |
---|---|
|
データ・レルム制約を削除するデータ・セキュリティ・ポリシーの名前。 名前は、 |
例
次の例は、EMPLOYEES_DS
データ・セキュリティ・ポリシーからすべてのデータ・レルム制約を削除します。
BEGIN SYS.XS_DATA_SECURITY.REMOVE_REALM_CONSTRAINTS('EMPLOYEES_DS'); END;
ADD_COLUMN_CONSTRAINTSプロシージャ
ADD_COLUMN_CONSTRAINTS
プロシージャは、1つ以上の列制約をデータ・セキュリティ・ポリシーに追加します。
構文
XS_DATA_SECURITY.ADD_COLUMN_CONSTRAINTS ( policy IN VARCHAR2, column_constraint IN XS$COLUMN_CONSTRAINT_TYPE); XS_DATA_SECURITY.ADD_COLUMN_CONSTRAINTS ( policy IN VARCHAR2, column_constraint_list IN XS$COLUMN_CONSTRAINT_LIST);
パラメータ
パラメータ | 説明 |
---|---|
|
属性制約を追加するデータ・セキュリティ・ポリシーの名前。 名前は、 |
|
追加する列制約。 |
|
追加する列制約のリスト。 |
例
次の例は、COMMISSION_PCT
列に対する列制約をEMPLOYEES_DS
データ・セキュリティ・ポリシーに追加します。
DECLARE column_cons XS$COLUMN_CONSTRAINT_TYPE; BEGIN column_cons := XS$COLUMN_CONSTRAINT_TYPE(column_list=> XS$LIST('COMMISSION_PCT'), privilege=> 'VIEW_SENSITIVE_INFO'); SYS.XS_DATA_SECURITY.ADD_COLUMN_CONSTRAINTS( policy=>'EMPLOYEES_DS', column_constraint=>column_cons); END;
REMOVE_COLUMN_CONSTRAINTSプロシージャ
REMOVE_COLUMN_CONSTRAINTS
プロシージャは、データ・セキュリティ・ポリシーからすべての列制約を削除します。
構文
XS_DATA_SECURITY.REMOVE_COLUMN_CONSTRAINTS ( policy IN VARCHAR2,);
パラメータ
パラメータ | 説明 |
---|---|
|
列制約を削除するデータ・セキュリティ・ポリシーの名前。 名前は、 |
例
次の例は、EMPLOYEES_DS
データ・セキュリティ・ポリシーからすべての列制約を削除します。
BEGIN SYS.XS_DATA_SECURITY.REMOVE_COLUMN_CONSTRAINTS('EMPLOYEES_DS'); END;
CREATE_ACL_PARAMETERプロシージャ
CREATE_ACL_PARAMETER
プロシージャは、データ・セキュリティ・ポリシーのACLパラメータを作成します。
構文
XS_DATA_SECURITY.CREATE_ACL_PARAMETER ( policy IN VARCHAR2, parameter IN VARCHAR2, param_type IN NUMBER);
パラメータ
パラメータ | 説明 |
---|---|
|
ACLパラメータを作成する必要のあるデータ・セキュリティ・ポリシーの名前。 名前は、 |
|
作成するACLパラメータの名前。 |
|
パラメータのデータ型。これは |
例
次の例は、DEPT_POLICY
というACLパラメータをEMPLOYEES_DS
データ・セキュリティ・ポリシーに対して作成します。
BEGIN SYS.XS_DATA_SECURITY.CREATE_ACL_PARAMETER('EMPLOYEES_DS','DEPT_POLICY',1); END;
DELETE_ACL_PARAMETERプロシージャ
DELETE_ACL_PARAMETER
プロシージャは、データ・セキュリティ・ポリシーのACLパラメータを削除します。
構文
XS_DATA_SECURITY.DELETE_ACL_PARAMETER ( policy IN VARCHAR2, parameter IN VARCHAR2, delete_option IN PLS_INTEGER := XS_ADMIN_UTIL.DEFAULT_OPTION);
パラメータ
パラメータ | 説明 |
---|---|
|
ACLパラメータを削除するデータ・セキュリティ・ポリシーの名前。 名前は、 |
|
削除するACLパラメータの名前。 |
|
使用する削除オプション。次のオプションを使用できます。
|
例
次の例は、デフォルト・オプションを使用してDEPT_POLICY
ACLパラメータをEMPLOYEES_DS
データ・セキュリティ・ポリシーから削除します。
BEGIN SYS.XS_DATA_SECURITY.DELETE_ACL_PARAMETER('EMPLOYEES_DS','DEPT_POLICY', XS_ADMIN_UTIL.DEFAULT_OPTION); END;
SET_DESCRIPTIONプロシージャ
SET_DESCRPTION
プロシージャは、指定されたデータ・セキュリティ・ポリシーの説明文字列を設定します。
構文
XS_DATA_SECURITY.SET_DESCRIPTION ( policy IN VARCHAR2, description IN VARCHAR2);
パラメータ
パラメータ | 説明 |
---|---|
|
説明を設定するデータ・セキュリティ・ポリシーの名前。 名前は、 |
|
指定されたデータ・セキュリティ・ポリシーの説明文字列。 |
例
次の例は、EMPLOYEES_DS
データ・セキュリティ・ポリシーの説明文字列を設定します。
BEGIN SYS.XS_DATA_SECURITY.SET_DESCRIPTION('EMPLOYEES_DS', 'Data Security Policy for HR.EMPLOYEES'); END;
DELETE_POLICYプロシージャ
DELETE_POLICY
プロシージャは、データ・セキュリティ・ポリシーを削除します。
構文
XS_DATA_SECURITY.DELETE_POLICY( policy IN VARCHAR2, delete_option IN PLS_INTEGER := XS_ADMIN_UTIL.DEFAULT_OPTION);
パラメータ
パラメータ | 説明 |
---|---|
|
削除するデータ・セキュリティ・ポリシーの名前。 名前は、 |
|
使用する削除オプション。セキュリティ・ポリシーに対して、次のオプションの動作は同じです。
|
例
次の例は、デフォルト・オプションを使用してEMPLOYEES_DS
データ・セキュリティ・ポリシーを削除します。
BEGIN SYS.XS_DATA_SECURITY.DELETE_POLICY('EMPLOYEES_DS', XS_ADMIN_UTIL.DEFAULT_OPTION); END;
ENABLE_OBJECT_POLICYプロシージャ
ENABLE_OBJECT_POLICY
プロシージャは、指定された表またはビューのデータ・セキュリティ・ポリシーを有効にします。ENABLE_OBJECT_POLICY
は、表またはビューに対してACLベースの行レベル・データ・セキュリティ・ポリシーを有効にします。
影響する表に対してインポートまたはエクスポートを実行した後で、またはデバッグの目的で、データ・セキュリティ・ポリシーを有効にすることが必要な場合があります。
現在のユーザーが使用可能な表またはビューのデータ・セキュリティ・ポリシーのステータスを調べるには、DBA_XS_APPLIED_POLICIESデータ・ディクショナリ・ビューを問い合せます。
ポリシーの強制前に、APPLY_SEC_POLICY
権限に対するチェックが実行されます。
構文
XS_DATA_SECURITY.ENABLE_OBJECT_POLICY ( policy IN VARCHAR2, schema IN VARCHAR2, object IN VARCHAR2);
パラメータ
パラメータ | 説明 |
---|---|
|
有効にするデータ・セキュリティ・ポリシーの名前。 名前は、 |
|
有効にする表またはビューを含むスキーマの名前。 |
|
データ・セキュリティ・ポリシーを有効にする表またはビューの名前。 |
例
次の例は、sales
スキーマのproducts
表に対してXDSを有効にします。
BEGIN SYS.XS_DATA_SECURITY.ENABLE_OBJECT_POLICY(policy =>'CUST_DS', schema=>'sales', object=>'products'); END;
DISABLE_OBJECT_POLICYプロシージャ
DISABLE_OBJECT_POLICY
プロシージャは、指定された表またはビューのデータ・セキュリティ・ポリシーを無効にします。DISABLE_OBJECT_POLICY
は、表またはビューに対してACLベースの行レベル・データ・セキュリティ・ポリシーを無効にします。
影響する表に対してインポートまたはエクスポートを実行する場合、またはデバッグの目的で、Real Application Securityを無効にすることが必要な場合があります。
現在のユーザーが使用可能な表またはビューのデータ・セキュリティ・ポリシーのステータスを調べるには、DBA_XS_APPLIED_POLICIESデータ・ディクショナリ・ビューを問い合せます。
ポリシーの強制前に、APPLY_SEC_POLICY
権限に対するチェックが実行されます。
構文
XS_DATA_SECURITY.DISABLE_OBJECT_POLICY ( policy IN VARCHAR2, schema IN VARCHAR2, object IN VARCHAR2);
パラメータ
パラメータ | 説明 |
---|---|
|
無効にするデータ・セキュリティ・ポリシーの名前。 名前は、 |
|
無効にする表またはビューを含むスキーマの名前。 |
|
データ・セキュリティ・ポリシーを無効にする表またはビューの名前。 |
例
次の例は、sales
スキーマのproducts
表に対してXDSを無効にします。
BEGIN SYS.XS_DATA_SECURITY.DISABLE_OBJECT_POLICY(policy =>'CUST_DS', schema=>'sales', object=>'products'); END;
REMOVE_OBJECT_POLICYプロシージャ
REMOVE_OBJECT_POLICY
プロシージャは、指定された表またはビューを削除せずに、そこからデータ・セキュリティ・ポリシーを削除します。REMOVE_OBJECT_POLICY
は、静的データ・レルム制約でENABLE_XDS
によって作成されたACLマテリアライズド・ビューを削除します。
現在のユーザーが使用可能な表またはビューのデータ・セキュリティ・ポリシーのステータスを調べるには、DBA_XS_APPLIED_POLICIESデータ・ディクショナリ・ビューを問い合せます。
ポリシーの強制前に、APPLY_SEC_POLICY
権限に対するチェックが実行されます。
構文
XS_DATA_SECURITY.REMOVE_OBJECT_POLICY ( policy IN VARCHAR2, schema IN VARCHAR2, object IN VARCHAR2);
パラメータ
パラメータ | 説明 |
---|---|
|
削除するデータ・セキュリティ・ポリシーの名前。 名前は、 |
|
データ・セキュリティ・ポリシーを削除する表またはビューを含むスキーマの名前。 |
|
データ・セキュリティ・ポリシーを削除する表またはビューの名前 |
例
次の例は、sales
スキーマのproducts
表からCUST_DS
データ・セキュリティ・ポリシーを削除します。
BEGIN SYS.XS_DATA_SECURITY.REMOVE_OBJECT_POLICY(policy=>'CUST_DS', schema=>'sales', object=>'products'); END;
APPLY_OBJECT_POLICYプロシージャ
APPLY_OBJECT_POLICY
プロシージャは、指定されたデータベース表またはビューのデータ・セキュリティ・ポリシーを有効または再度有効にします。
現在のユーザーが使用可能な表またはビューのデータ・セキュリティ・ポリシーのステータスを調べるには、DBA_XS_APPLIED_POLICIESデータ・ディクショナリ・ビューを問い合せます。
ポリシーの強制前に、APPLY_SEC_POLICY
権限に対するチェックが実行されます。
構文
XS_DATA_SECURITY.APPLY_OBJECT_POLICY ( policy IN VARCHAR2, schema IN VARCHAR2, object IN VARCHAR2, row_acl IN BOOLEAN DEFAULT FALSE, owner_bypass IN BOOLEAN DEFAULT FALSE, statement_types IN VARCHAR2 DEFAULT NULL, aclmv IN VARCHAR2 DEFAULT NULL );
パラメータ
パラメータ | 説明 |
---|---|
|
有効にするデータ・セキュリティ・ポリシーの名前。 名前は、 |
|
有効または再度有効にするリレーショナル表またはビューを含むスキーマの名前。 |
|
データ・セキュリティ・ポリシーを有効または再度有効にするリレーショナル表またはビューの名前。 |
|
デフォルトは |
|
オブジェクトの所有者はデータ・セキュリティ・ポリシーをバイパスできます。デフォルトは |
|
タイプは、 アプリケーション・セキュリティにより、表の行を更新する必要があり、同じ表の特定の列への読取りアクセスも制限される場合は、2つの |
|
静的ACL情報をメンテナンスするユーザー提供のMV名を指定します。MVには、 |
例
次の例は、HR
スキーマのEMP
表に対してDEPT_POLICY
データ・セキュリティ・ポリシーを有効にします。
BEGIN sys.xs_data_security.apply_object_policy( policy => 'HR.EMPLOYEES_DS', schema => 'HR', object => 'EMPLOYEES', statement_types => 'SELECT', owner_bypass => true); END;