select '1','1',
value(sov),
r.obj#, r.gname, r.pname,
BITAND(r.stmt_type,15)+BITAND(r.stmt_type,2048),
r.check_opt, r.enable_flag, r.pfschma, r.ppname, r.pfname,
case bitand(r.stmt_type,16+64+128+256+8192+16384+32768+524288)
when 16 then 'dbms_rls.STATIC'
when 64 then 'dbms_rls.SHARED_STATIC'
when 128 then 'dbms_rls.CONTEXT_SENSITIVE'
when 256 then 'dbms_rls.SHARED_CONTEXT_SENSITIVE'
when 8192 then 'dbms_rls.XDS1'
when 16384 then 'dbms_rls.XDS2'
when 32768 then 'dbms_rls.XDS3'
when 524288 then 'dbms_rls.OLS'
else 'dbms_rls.DYNAMIC'
end,
BITAND(r.stmt_type,512),
cast(multiset(select c.name from col$ c, rls_sc$ sc where
sc.obj#=r.obj# and
sc.gname=r.gname and
sc.pname=r.pname and
sc.obj#=c.obj# and sc.intcol#=c.intcol#
)
as ku$_rls_sec_rel_col_list_t),
BITAND(r.stmt_type, 4096),
cast(multiset(select * from sys.rls_csa$ rlsa where
rlsa.obj#=r.obj# and
rlsa.gname=r.gname and
rlsa.pname=r.pname
)
as ku$_rls_assoc_list_t)
from ku$_edition_schemaobj_view sov, sys.rls$ r
where r.obj# = sov.obj_num and
bitand(r.stmt_type, 8192+16384+32768) =0 and
(SYS_CONTEXT('USERENV','CURRENT_USERID') in (sov.owner_num, 0) OR
EXISTS ( SELECT * FROM sys.session_roles
WHERE role='SELECT_CATALOG_ROLE' ))
SELECT '1'
, '1'
,
VALUE(SOV)
,
R.OBJ#
, R.GNAME
, R.PNAME
,
BITAND(R.STMT_TYPE
, 15)+BITAND(R.STMT_TYPE
, 2048)
,
R.CHECK_OPT
, R.ENABLE_FLAG
, R.PFSCHMA
, R.PPNAME
, R.PFNAME
,
CASE BITAND(R.STMT_TYPE
, 16+64+128+256+8192+16384+32768+524288)
WHEN 16 THEN 'DBMS_RLS.STATIC'
WHEN 64 THEN 'DBMS_RLS.SHARED_STATIC'
WHEN 128 THEN 'DBMS_RLS.CONTEXT_SENSITIVE'
WHEN 256 THEN 'DBMS_RLS.SHARED_CONTEXT_SENSITIVE'
WHEN 8192 THEN 'DBMS_RLS.XDS1'
WHEN 16384 THEN 'DBMS_RLS.XDS2'
WHEN 32768 THEN 'DBMS_RLS.XDS3'
WHEN 524288 THEN 'DBMS_RLS.OLS'
ELSE 'DBMS_RLS.DYNAMIC'
END
,
BITAND(R.STMT_TYPE
, 512)
,
CAST(MULTISET(SELECT C.NAME
FROM COL$ C
, RLS_SC$ SC WHERE
SC.OBJ#=R.OBJ# AND
SC.GNAME=R.GNAME AND
SC.PNAME=R.PNAME AND
SC.OBJ#=C.OBJ#
AND SC.INTCOL#=C.INTCOL#
)
AS KU$_RLS_SEC_REL_COL_LIST_T)
,
BITAND(R.STMT_TYPE
, 4096)
,
CAST(MULTISET(SELECT *
FROM SYS.RLS_CSA$ RLSA WHERE
RLSA.OBJ#=R.OBJ# AND
RLSA.GNAME=R.GNAME AND
RLSA.PNAME=R.PNAME
)
AS KU$_RLS_ASSOC_LIST_T)
FROM KU$_EDITION_SCHEMAOBJ_VIEW SOV
, SYS.RLS$ R
WHERE R.OBJ# = SOV.OBJ_NUM AND
BITAND(R.STMT_TYPE
, 8192+16384+32768) =0 AND
(SYS_CONTEXT('USERENV'
, 'CURRENT_USERID') IN (SOV.OWNER_NUM
, 0) OR
EXISTS ( SELECT *
FROM SYS.SESSION_ROLES
WHERE ROLE='SELECT_CATALOG_ROLE' ))
|
|
|