重庆思庄Oracle、Redhat认证学习论坛

标题: Oracle 12C R2-新特性-PDB lockdown profile [打印本页]

作者: 郑全    时间: 2022-3-16 12:03
标题: Oracle 12C R2-新特性-PDB lockdown profile
本帖最后由 郑全 于 2022-3-16 12:04 编辑

1 说明
12.2中,可以利用PDB lockdown profile来限制用户对PDB的某些明感危险操作,如:ALTER SYSTEM操作。
注意:这里不管你是什么用户,哪怕是sys用户也一样被限制,一视同仁。
2 具体例子
创建一个lockdown profile来限制ALTER SYSTEM操作,除了ALTER SYSTEM FLUSH SHARED POOL
2.1  创建lockdown profileSQL> CREATE LOCKDOWN PROFILE high_pro;
Lockdown Profile created

SQL> ALTER LOCKDOWN PROFILE high_pro DISABLE STATEMENT=('ALTER SYSTEM');
Lockdown Profile altered.
SQL> ALTER LOCKDOWN PROFILE high_pro ENABLE STATEMENT=('ALTER SYSTEM') CLAUSE=('FLUSH SHARED_POOL');
Lockdown Profile altered.

2.2  启用lockdown profile
SQL> show pdbs;   
CON_ID CON_NAME          OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED          READ ONLY  NO
3 LEIPDB          READ WRITE YES
SQL> alter session set container=leipdb;
Session altered.
--LEIPDBPDB启用该lockdown profile

SQL> alter system set PDB_LOCKDOWN =high_pro;
System altered.
SQL> SHOW PARAMETER PDB_LOCKDOWN
NAME             TYPE    VALUE
-------------------  ----------------- ------------------
pdb_lockdown         string   HIGH_PRO

2.3  查看lockdown profile

SELECT * from DBA_LOCKDOWN_PROFILES
2.4  测试
--在当前PDB下执行其他ALTER SYSTEM命令

SQL> alter system switch logfile;alter system switch logfile*ERROR at line 1:ORA-01031: insufficient privileges
这里我是用sys用户操作的也是不允许的。
--执行flush shared pool看看
SQL> alter system FLUSH SHARED_POOL;System altered.
可以看到是没问题的。
注意:千万不要在生产环境执行该语句。
2.5  修改lockdown profile
Lockdown profile支持动态修改,修改完立即生效。
ALTER LOCKDOWN PROFILE high_pro ENABLE STATEMENT=('ALTER SYSTEM');
2.6  删除lockdown profile
DROP LOCKDOWN PROFILE high_pro;






欢迎光临 重庆思庄Oracle、Redhat认证学习论坛 (http://bbs.cqsztech.com/) Powered by Discuz! X3.2