除了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. CMDB和运维自动化

    IT运维,指的是对已经搭建好的网络,软件,硬件进行维护.运维领域也是有细分的,有硬件运维和软件运维 硬件运维主要包括对基础设施的运维,比如机房的设备,主机的硬盘,内存这些物理设备的维护 软件运维主要包 ...

  2. 斐波那契数列—java实现

    最近在面试的时候被问到了斐波那契数列,而且有不同的实现方式,就在这里记录一下. 定义 斐波那契数列指的是这样一个数列 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ...

  3. eclipse Multiple annotations found at this line

    参考:http://blog.csdn.net/li396864285/article/details/42745071 这样的错不影响编程,是eclipse的校验问题 去掉相应的Build就行了

  4. 最详尽的IntelliJ IDEA项目web项目搭建!!!!!!

    一.创建一个web项目(首次创建最麻烦) 1.保证安装好软件 2.双击打开软件-->新建一个项目 3.web项目选择如图,先建立一个空的项目空间来放置你的项目,这是一个区别 相当于myeclip ...

  5. Spring框架总结(四)

    对象依赖关系 Spring中,如何给对象的属性赋值?  [DI, 依赖注入] 1) 通过构造函数 2) 通过set方法给属性注入值 3) p名称空间 4)自动装配(了解) 5) 注解 一.对象属性赋值 ...

  6. CKEditor4.x整合教程-Xproer.WordPaster

    版权所有 2009-2017 荆门泽优软件有限公司 保留所有权利 官方网站:http://www.ncmem.com/ 产品首页:http://www.ncmem.com/webplug/wordpa ...

  7. 设计模式17:Iterator 迭代器模式(行为型模式)

    Iterator 迭代器模式(行为型模式) 动机(Motivation) 在软件构建过程中,集合对象内部结构常常变化各异.但对于这些集合对象,我们希望在不暴露其内部结构的同时,可以让外部客户代码可以透 ...

  8. 敏捷软件开发:原则、模式与实践——第13章 写给C#程序员的UML概述

    第13章 写给C#程序员的UML概述 UML包含3类主要的图示.静态图(static diagram)描述了类.对象.数据结构以及它们之间的关系,藉此表现出了软件元素间那些不变的逻辑结构.动态图(dy ...

  9. 团体程序设计天梯赛L1-024 后天 2017-03-22 17:59 68人阅读 评论(0) 收藏

    L1-024. 后天 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 如果今天是星期三,后天就是星期五:如果今天是星期六,后天就 ...

  10. mvn -v提示Permission denied

    解决办法: 增加权限 chmod a+x  /usr/local/apache-maven-3.5.2/bin/mvn 解释: (a:所有用户  +:增加权限   x:执行权限)