除了IO、内存、CPU之外,还有一些限制,比如:限制在pdb中的操作命令,我们可以创建一个lockdown profile来限制对当前PDB的操作,增强某些操作的安全性。
 
关于PDB Lockdown Profiles
以下通过一个简单的测试来看看这个特性的基本功能。 首先在CDB root下创建一个profile,这个profile将对全局可用,并且需要:

 
创建PDB Lockdown Profile
SQL> connect / as sysdba
Connected. SQL> CREATE LOCKDOWN PROFILE woqutech;
Lockdown Profile created. SQL> ALTER LOCKDOWN PROFILE woqutech DISABLE STATEMENT = ('ALTER SYSTEM'); --禁用alter system 命令
Lockdown Profile altered.
 
 
 
 
 
8
8
 
 
 
1
SQL> connect / as sysdba
2
Connected.
3

4
SQL> CREATE LOCKDOWN PROFILE woqutech;
5
Lockdown Profile created.
6

7
SQL> ALTER LOCKDOWN PROFILE woqutech DISABLE STATEMENT = ('ALTER SYSTEM');    --禁用alter system 命令
8
Lockdown Profile altered.
 
 
 
连接到PDB WXH,在PDB级别启用lockdown profile :
 
使PDB Lockdown Profile生效
SQL> alter session set container = wxh;
Connected. SQL> ALTER SYSTEM SET PDB_LOCKDOWN = woqutech;
System altered. 在执行alter system 时就会报ora-01031
例:
SQL> alter system set statistics_level=all ; ERROR at line 1:
ORA-01031: insufficient privileges
 
 
 
 
 
12
12
 
 
 
1
SQL> alter session set container = wxh;
2
Connected.
3

4
SQL> ALTER SYSTEM SET PDB_LOCKDOWN = woqutech;
5
System altered.
6

7
在执行alter system 时就会报ora-01031
8
例:
9
SQL> alter system set statistics_level=all ;
10

11
ERROR at line 1:
12
ORA-01031: insufficient privileges
 
 

LOCKDOWN PROFILE可以限制到非常细粒度的权限,比如以下限制仅仅限制用户执行ARCHIVE LOG和CHECKPOINT操作。


SQL> connect / as sysdba
Connected.
SQL> alter lockdown profile woqutech enable statement = ('ALTER SYSTEM') clause all except = ('ARCHIVE LOG','CHECKPOINT');
Lockdown Profile altered.
 
 
 
 
 
4
4
 
 
 
1
SQL> connect / as sysdba
2
Connected.
3
SQL> alter lockdown profile woqutech enable statement = ('ALTER SYSTEM') clause all except = ('ARCHIVE LOG','CHECKPOINT');
4
Lockdown Profile altered.
 
 
禁止当前PDB所有的alter system语句
ALTER LOCKDOWN PROFILE woqutech DISABLE STATEMENT = ('ALTER SYSTEM');
 
 
 
 
 
1
1
 
 
 
1
ALTER LOCKDOWN PROFILE woqutech DISABLE STATEMENT = ('ALTER SYSTEM');
 
 
禁止除了alter system flush shared_pool外的所有altersystem 语句。
ALTER LOCKDOWN PROFILE woqutech ENABLE STATEMENT = ('ALTER SYSTEM') clause = ('flush shared_pool');
 
 
 
 
 
1
1
 
 
 
1
ALTER LOCKDOWN PROFILE woqutech ENABLE STATEMENT = ('ALTER SYSTEM') clause = ('flush shared_pool');
 
 
禁止PDB中XDB protocols(FTP, HTTP, HTTPS)的使用
ALTER LOCKDOWN PROFILE woqutech DISABLEFEATURE = ('XDB_PROTOCOLS')
 
 
 
 
 
1
1
 
 
 
1
ALTER LOCKDOWN PROFILE woqutech DISABLEFEATURE = ('XDB_PROTOCOLS')
 
 

除了特定的权限,还可以对某些数据库功能特点进行限制:

比如调用和执行UTL_HTTP和 UTL_TCP 包可能是高风险的,那么以下的PROFILE设置可以禁用这些特性:
 
alter lockdown profile woqutechdisable feature = ('UTL_HTTP', 'UTL_TCP');
 
 
 
 
 
1
1
 
 
 
1
alter lockdown profile woqutechdisable feature = ('UTL_HTTP', 'UTL_TCP');
 
 

删除PDB Lockdown Profile

DROP LOCKDOWN_PROFILE woqutech;
 
 
 
 
 
1
1
 
 
 
1
DROP LOCKDOWN_PROFILE woqutech;
 
 

<wiz_tmp_tag id="wiz-table-range-border" contenteditable="false" style="display: none;">

 
 
 
 

oracle12c之四 控制PDB操作 PDBLockdown Profiles的更多相关文章

  1. oracle12c之 控制pdb中sga 与 pga 内存使用

    Memory Management using Resource Manager Oracle数据库资源管理器(资源管理器)现在可以在多租户容器数据库(CDB)中管理可插入数据库(PDBs)之间的内存 ...

  2. oracle12c之一 控制-PDB的磁盘I/O(IOPS,MBPS)资源管理

    在以前的版本中,没有简单的方法来控制单个PDB使用的磁盘I / O量. 因此,某个PDB可能耗尽大量磁盘I / O,并影响同一实例中的其他PDB的性能. Oracle 12c R2可以控制PDB使用的 ...

  3. oracle12c之三 控制PDB中CPU 资源使用

      CPU资源隔离 数据库中,不同的PDB对主机CPU资源使用要求不同,那么我们就可以使用CDB resourceplans来管理不同pdb对CPU资源的使用. CDB Resource Plans ...

  4. oracle12c之二 控制PDB中SGA 与 PGA 内存使用

    oracle12c之 控制pdb中sga 与 pga 内存使用 Memory Management using Resource Manager Oracle数据库资源管理器(资源管理器)现在可以在多 ...

  5. Selenium3 + Python3自动化测试系列三——控制浏览器操作

    控制浏览器操作 控制浏览器窗口大小 在测试过程中,我们在打开浏览器后,根据需求可自定义调整浏览器的尺寸大小.WebDriver提供了set_window_size()方法来设置浏览器的大小. 如果页面 ...

  6. 归纳整理Linux下C语言常用的库函数----内存及字符串控制及操作

    在没有IDE的时候,记住一些常用的库函数的函数名.参数.基本用法及注意事项是很有必要的. 参照Linux_C_HS.chm的目录,我大致将常用的函数分为一下几类: 1. 内存及字符串控制及操作 2. ...

  7. 035——VUE中表单控件处理之使用vue控制select操作文字栏目列表

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. selenium控制浏览器操作

    selenium控制浏览器操作 控制浏览器有哪些操作? 控制页面大小 前进.后退 刷新 自动输入.提交 ........  控制页面大小,实例: # -*- coding:utf-8 -*- from ...

  9. VFP控制Excel操作集

    ◆访问EXCEL:ExcelSheet = GetObject('','Excel.Sheet')返回结果为类,则成功.例:ExcelSheet = GetObject('','Excel.Sheet ...

随机推荐

  1. mybatis之generator生成代码

    首先在pom文件中引入以下代码 <plugin> <groupId>org.mybatis.generator</groupId> <artifactId&g ...

  2. loadFileSystems error & ExceptionUtils错误原因分析

    loadFileSystems error & ExceptionUtils错误原因分析 一见 2014/5/7 C/C++程序通过hdfs.h访问HDFS,运行时遇到如下错误,会是什么原因了 ...

  3. How To Start Building Spatially Aware Apps With Google’s Project Tango

    How To Start Building Spatially Aware Apps With Google’s Project Tango “Tango can enable a whole new ...

  4. 流程控制语句(if、for、while、do while、switch、 break、continue)

    3:流程控制语句    (1)顺序结构 从上往下,依次执行    (2)选择结构    按照不同的选择,执行不同的代码    (3)循环结构 做一些重复的代码 4:if语句    (1)三种格式   ...

  5. Android 类加载器

    首先需要知道的是android中两个主要的classloader,PathClassLoader和DexClassLoader,它们都继承自BaseDexClassLoader,这两个类有什么区别呢? ...

  6. pom.xml导入项目的时候,出错

  7. sonar资料

    看过的sonar比较好的在线参考资料(自认为): 1.<使用 Sonar 进行代码质量管理>>,地址:http://www.ibm.com/developerworks/cn/jav ...

  8. 【Apache系列】linux下Apache的常用操作

    1. 启动/停止 1.1假设你的apahce安装目录为/usr/local/apache2,这些方法适合任何情况 apahce启动命令: /usr/local/apache2/bin/apachect ...

  9. 爬虫开发14.scrapy框架之分布式操作

    分布式爬虫 一.redis简单回顾 1.启动redis: mac/linux:   redis-server redis.conf windows: redis-server.exe redis-wi ...

  10. JAVA分解质因子

    /*题目 分解质因数(5分) 题目内容: 每个非素数(合数)都可以写成几个素数(也可称为质数)相乘的形式,这几个素数就都叫做这个合数的质因数.比如,6可以被分解为2x3,而24可以被分解为2x2x2x ...