相关术语

数据库用户帐户:用来管理数据库对象的所有权和访问权限

口令: Oracle 数据库使用的验证手段

权限:执行特定类型的SQL 语句或访问其他用户的对象的权利

角色:由相关权限组成的已命名组,可将其授予给用户或其它角色。

概要文件:一组已命名的针对数据库用法和实例资源的资源限制条件

限额:表空间中允许的空间容量。

用户

数据库用户帐户

唯一的用户名:不超过30个字节,不包含特殊符号,以字母开头

验证方法:最常见为口令

默认表空间:如果用户未指定其它表空间,则可在这个表空间中创建对象。(不等于说有创建对象的权限,需要单独授权)

临时表空间:用户可在其中创建临时对象(如排序和临时表)的表空间。

用户概要文件:分配给用户的一组资源与口令的限制。

使用者组:由资源管理器使用

锁定状态:用户只能访问“未锁定”帐户

预定义账户sys&system

sys

授予有 DBA 角色

具有 ADMIN OPTION 的所有权限(with admin option 用于系统权限授权,给一个用户授予系统权限带上with admin option 时,此用户可把此系统权限授予其他用户或角色,但收回这个用户的系统权限时,这个用户已经授予其他用户或角色的此系统权限不会因传播无效);执行启动、关闭和某些维护命令时所必需的帐户(SYSDBA,SYSOPER);拥有数据字典(数据字典视图和动态性能视图的区别);拥有自动工作量资料档案库 (AWR)

system

授予有 DBA 角色;没有sysdba权限

sys和sysdba的区别:简单的说sys是一个角色,sysdba是一个权限

使用EM创建用户:选择“Administration > Schema > Users & Privileges > Users(管理 > 方案 > 用户和权限 > 用户)” ,然后单击“Create(创建)”按钮。

验证用户

口令:oracle database验证

外部:操作系统认证

全局:管理员验证

操作系统安全性

DBA 必须具有创建或删除文件的操作系统权限

普通数据库用户不应具有创建或删除数据库文件的操作系统权限

管理员安全性

口令文件验证会按名称记录 DBA 用户

操作系统验证并不记录具体用户

对于 SYSDBA 和 SYSOPER,操作系统验证优先于口令文件验证

权限

系统权限::每种系统权限都允许用户执行一种或一类特定的数据库操作。系统权限可由管理员授予,或者由可以显式授予管理权限的用户授予,

授予管理员的权限(grant  create table to hr)

RESTRICTED SESSION:在受限模式下打开的数据库也可以登录

SYSDBA和 SYSOPER:使用这两个权限可以在数据库中执行关闭、启动、恢复及其它管理任务。使用 SYSOPER 用户可执行基本操作任务,但不能查看用户数据。

DROP ANY 对象:使用DROP ANY 权限用户可删除其他用户拥有的对象。

CREATE、MANAGE、DROP 和 ALTER TABLESPACE

CREATE ANY DIRECTORY:使用Oracle 数据库开发人员可以在 PL/SQL 内调用外部代码。

GRANT ANY OBJECT PRIVILEGE:使用此权限,您可以授予对他人所拥有的对象的对象权限。

ALTER DATABASE和 ALTER SYSTEM

撤销权限(revoke create table from hr)(撤销系统权限时不会产生级联效应)

对象权限:对象权限允许用户对特定对象执行一个特定的操作。在没有特定权限的情况下,用户只能访问自己拥有的对象。对象权限可以由对象的所有者或管理员授予,也可以由为其显式授予了对象授予权限的用户授予。

授予对象权限

选择对象类型

选择对象

选择权限

撤销对象权限(会产生级联效应)

角色

作用:简化权限管理

动态地管理权限:如果修改了与某个角色关联的权限,则授予该角色的所有用户都会立即自动获得修改过的权限。

有选择性地应用权限:启用或禁用角色可以暂时打开或关闭权限。

预定义角色

创建角色:选择“Administration > Schema > Users & Privileges > Roles(管理 > 方案 > 用户和权限 > 角色)

保护角色:

角色可能不是默认的:SET ROLE vacationdba;

可以通过验证来保护角色。

通过编程来保护角色:CREATE ROLE secure_application_role IDENTIFIED USING <security_procedure_name>;

创建用户的语法:

create user 账户名 identified by 密码 password expire  account unlock default tablespace 表空间名 temporary tablespace 临时表空间名 quota 大小 on tablespace 表空间名 profile default 概要文件

概要文件(指定时间内一恶搞用户只能有一个概要文件,修改概要文件则下次登录时生效)

定义:指一组已命名的针对数据库用法和实例资源的资源限制条件

作用:控制资源占用;管理帐户状态和口令失效

口令安全性

帐户锁定:如果用户的登录失败次数达到了指定次数,系统会在设置的一段时间内自动锁定帐户。

FAILED_LOGIN_ATTEMPTS 参数指定了在锁定帐户前失败的尝试登录次数。

PASSWORD_LOCK_TIME 参数指定了尝试登录失败次数达到指定次数后帐户的锁定天数。

口令过期和失效:使用户口令具有生存期,口令在此生存期之后失效,必须进行更改。

PASSWORD_LIFE_TIME 参数指定了口令的生存期(以天为单位),此时间之后,口令会失效。

PASSWORD_GRACE_TIME 参数指定了口令失效后首次成功登录之后,更改口令的宽限期(以天为单位)。

口令历史记录:检查新口令以确保在指定时间内或者在指定口令更改次数内不重复使用口令。

PASSWORD_REUSE_TIME:指定用户不能在指定天数内重复使用口令

PASSWORD_REUSE_MAX:指定在可重复使用当前口令之前需要更改口令的次数

这两个参数是互相排斥的,因此,如果其中一个参数值没有被设置 UNLIMITED,则另一个参数必须设置为 UNLIMITED

口令复杂性验证:对口令进行复杂性检查可验证口令是否符合特定的规则。

限额

无限制:允许用户最大限度地使用表空间中的可用空间值:用户可以使用的空间,以千字节或兆字节为单位。

UNLIMITED TABLESPACE 系统权限:此系统权限会覆盖所有单个的表空间限额,并向用户提供所有表空间(包括 SYSTEM和 SYSAUX)的无限制限额。

何时补充限额?使用 PURGE子句删除了用户拥有的对象或者自动清除了回收站中的对象时会补充限额。

案例:创建一个外部认证账户mary

1、 查看系统默认外部认证账户的前缀:

show parameter os_authent_prefix;  查看值:普通为ops$

2、 创建一个操作系统账户

useradd mary

passwd mary

usermod -g ointsll

3、  创建数据账户,给连接权限

create user ops$mary  IDENTIFIED EXTERNALLY ;

grant create session to ops$mary

4、  mary是远程连接,查看系统是否允许远程连接

remote_os_authent 值false,不允许(默认);值TRUE,允许。

alter system set remote_os_authent=true scope=spfile

5、  测试 使用 mary登录操作系统

su - mary

sqlplus /@orcl

转载于:https://www.cnblogs.com/rhino1030/archive/2011/11/12/2246729.html

ocp 042 第六章:管理用户安全性相关推荐

  1. ocp 042 第十一章:管理oracle网络配置

    此章已经融入"第四章:管理oracle实例中将" 转载于:https://www.cnblogs.com/rhino1030/archive/2011/11/13/2247303. ...

  2. ocp 042 第七章:管理方案对象

    这一章很简单,懒得做笔记 转载于:https://www.cnblogs.com/rhino1030/archive/2011/11/13/2247289.html

  3. 【高校宿舍管理系统】第六章 用户管理和年级管理

    第六章 用户管理和年级管理 提示:本博客个为人独立博客,不是权威,仅供参考!所有思路只做交流之用!如有不足之处,望各位在评论区友善指正. 文章目录 第六章 用户管理和年级管理 前言 一.用户管理 1. ...

  4. 鸟哥的Linux私房菜(基础篇)- 第二十六章、Linux 核心编译与管理

    第二十六章.Linux核心编译与管理 最近升级日期:2009/09/18 我们说的 Linux 其实指的就是核心 (kernel) 而已.这个核心控制你主机的所有硬件并提供系统所有的功能,所以说,他重 ...

  5. .NET Core实战项目之CMS 第十六章 用户登录及验证码功能实现

    前面为了方便我们只是简单实现了基本业务功能的增删改查,但是登录功能还没有实现,而登录又是系统所必须的,得益于 ASP.NET Core的可扩展性因此我们很容易实现我们的登录功能.今天我将带着大家一起来 ...

  6. 第六章 Qt布局管理器Layout

    第六章 Qt布局管理器Layout 大家有没有发现一个现象,我们放置一个组件,给组件最原始的定位是给出这个控件的坐标和宽高值,这样Qt就知道这个组件的位置.当用户改变窗口的大小,组件还静静地呆在原来的 ...

  7. java都要caps标点_第 1 章 管理 Java CAPS 用户

    第 1 章 管理 Java CAPS 用户 在此处列出的主题提供了有关如何管理 Sun JavaTM Composite Application Platform Suite (Java CAPS) ...

  8. MongoDB 教程六: MongoDB管理:数据导入导出,数据备份恢复及用户安全与认证

    视频地址:MongoDB 教程六: MongoDB管理:数据导入导出,数据备份恢复及用户安全与认证 MongoDB数据库备份与恢复 一.备份 先介绍下命令语法: mongodump -h dbhost ...

  9. 第六章(项目进度管理)知识点

    项目进度管理 核心概念: 1.项目管理团队选择进度计划方法,例如关键路径法或敏捷方法. 2.项目管理团队将项目特定数据,如活动.计划日期.持续时间.资源.依赖关系和制约因素等输入进度计划编制工具,以创 ...

最新文章

  1. 计算机知识必备,小结||计算机基础知识点十(必备)
  2. 上海一百多个数据中心每年消耗全市1.6%的电,将优胜劣汰
  3. 手机更新找不到计算机,为什么手机更新换代这么快,电脑的更新却没有这么快呢...
  4. oracle sql语句 只读,Oracle_SQL语句
  5. Jsoup消除不受信任的HTML(用于防止XSS的攻击)
  6. K8S_Google工作笔记0008---通过二进制方式_搭建集群介绍
  7. android命名管道创建使用
  8. 解决tomcat启动startup.bat一闪而…
  9. ELK logstash基本配置
  10. python turtle代码示例-Python turtle.left方法代码示例
  11. 编译icedTea-web报错填坑之旅
  12. oracle嵌套case when,case when 中是否可以在嵌套一个case when ?
  13. java 调用kettle ktr_java调用kettle数据库类型资源库中的ktr
  14. ExoPlayer播放器剖析(七)ExoPlayer对音频时间戳的处理
  15. 屏保:毛雷尔玫瑰屏保
  16. 神经网络不work该怎么办!看看这11条
  17. springboot+hutool批量生成二维码压缩导出
  18. 魔众微信管理系统 v1.0.0 更简单可用的微信公众号管理系统
  19. empty:expect的替代
  20. 函数编程之Function

热门文章

  1. vue 自定义属性判断点击每个item 显示隐藏
  2. Node.js实现TCP和HTTP并作简单的比较
  3. 一.redis 环境搭建
  4. 如何在SQL Server查询语句(Select)中检索存储过程(Store Procedure)的结果集
  5. java之方法的重写
  6. c++ 如何获取系统时间
  7. win32 socket的一个简单的例子 控制台
  8. c#如何将子窗体显示到父窗体的容器(panel)控件中
  9. C# 中的委托和事件(详解) ....
  10. 用WindowManager实现Android悬浮框以及拖动事件