Oracle 用户与模式的关系

Wesley13
• 阅读 525

一、用户登录

Oracle 数据库的安全保护流程分为3个步骤。

1、用户向数据库提供身份识别信息,即提供一个数据库账号

2、证明身份识别信息是否有效,通过密码来实现

3、用户输入的密码经过数据库的核对确认是否正确。

最后,假设密码正确,那么数据库认为身份识别信息是课信赖的。此时,数据库会基于身份识别信息的基础上确定用户所拥有的权限,即用户可以对数据执行的操作。因为,为了确保数据库的安全,首要的问题就是对用户进行管理。

这里的用户并不是数据库的操作人员,而是在数据库中定义的一个名称,更准确地说它是账户,它是 Oracle 数据库的基本访问控制机制,当连接到 Oracle 数据库时,操作人员必须提供正确的用户名和密码。

每个连接到数据库的用户所具有的权限是不同的。Oracle 提供了一些特权用户,比如 systdba 或者 sysoper,这些用户主要是用于执行数据库的维护操作,如启动、关闭、建立数据库,以及执行备份和恢复等操作。

SYSDBA和SYSOPER的区别在于:sysdba 不仅具有sysoper 的所有权限,而且还可以建立数据库,执行不完全恢复。

Oracle 提供了默认的特权用户SYS,当以特权用户身份登录数据库时,必须带有 as sysdba 或 as sysoper 选项。

例如:

SQL> connect system/密码  as sysdba;

二、模式

与用户密切关联的另一个概念就是模式,模式也称作方案(Schema)。模式实际上是用户所拥有的数据库对象的集合。在Oracle 数据库中,对象是以用户来组织的,用户与模式是一 一 对应的关系,并且两者名称相同。

每个用户都会有自己的一个模式,用户所有的对象都属于这个模式。

访问数据库对象时,注意事项

a、 在同一个模式中不能存在同名的对象,但是不同模式中的对象名称则可以相同。

b、用户可以直接访问本模式中所有对象,但如果要访问其他模式对象,则必须具有该对象的响应访问权限。例:A用户可以直接查看模式下面的emp表,但是如果用户B想要查看A模式下的emp表,则必须在emp表上具有select 的权限。

c、当用户访问其他模式对象时,必须附加模式名作为前缀。

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
待兔 待兔
5个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Jacquelyn38 Jacquelyn38
3年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
Wesley13 Wesley13
3年前
RAC环境单实例启动数据库收到ORA
     在RAC环境中,如果你在没有启动节点的集群服务的情况下单实例启动数据库,将收到类似如下的报错:\oracle@rhel1u01\$sqlSQL\Plus:Release10.2.0.5.0ProductiononTueApr215:00:272013Copyright(
Stella981 Stella981
3年前
Python3:sqlalchemy对mysql数据库操作,非sql语句
Python3:sqlalchemy对mysql数据库操作,非sql语句python3authorlizmdatetime2018020110:00:00coding:utf8'''
Stella981 Stella981
3年前
Kerberos无约束委派的攻击和防御
 0x00前言简介当ActiveDirectory首次与Windows2000Server一起发布时,Microsoft就提供了一种简单的机制来支持用户通过Kerberos对Web服务器进行身份验证并需要授权用户更新后端数据库服务器上的记录的方案。这通常被称为Kerberosdoublehopissue(双跃点问题),
Stella981 Stella981
3年前
KVM调整cpu和内存
一.修改kvm虚拟机的配置1、virsheditcentos7找到“memory”和“vcpu”标签,将<namecentos7</name<uuid2220a6d1a36a4fbb8523e078b3dfe795</uuid
Wesley13 Wesley13
3年前
MySQL和Oracle的区别
本质区别:Oracle数据库是一个对象关系数据库管理系统(收费)MySQL是一个开源的关系数据库管理系统(免费)数据库的安全性:mysql使用三个参数来验证用户,即用户名,密码和位置Oracle使用了更多的安全功能,如用户名,密码,配置文件,本地身份验
Wesley13 Wesley13
3年前
MongoDB 分片管理(一)检查集群状态
一、检查集群状态1.1使用sh.status()查看集群摘要信息1、使用sh.status()可以查看分片信息、数据库信息、集合信息sh.status()如果数据块较多时,使用sh.status(true)又是输出会很多,就不会截断,要使用如下查看2、tooman