oracle中角色的用户和权限管理,用户角色与权限控制
一、oracle中的用户
系统用户:sys、system(系统创建的用户)
登录命令:sqlplus sys/密码 as sysdba
备注:sys是oracle数据库中最高权限用户,角色为sysdba(数据库管理员),system用户的权限仅次于sys,角色为sysoper(数据库操作员)
超级用户: /
登录命令:sqlplus / as sysdba
普通用户:用户自己创建的用户(系统自带的有scott)
备注:给锁定用户解锁并更改密码,如scott,锁定的用户一般密码都过期要修改密码
解锁:alter user scott account unlock;
改密码:alter user scott identified by tiger;
1.1、创建用户
create user 用户名 identified by 密码
例如:create user abc identified by 123;
创建时设置默认表空间:create user 用户名 identified by 密码 default tablespace 表空间名
例如:create user abc identified by 123 default tablespace system;
备注:新创建的用户默认表空间为users,状态为open状态
1,2、用户与模式(schema)
模式是指用户所拥有的所有的对象的集合,对象包括:表、索引、视图等,每个用户都会有独立的模块信息,schema必须依赖于用户而存在 ,意义在于标志某个对象的所有者,schema+对象的组合可以限制数据库中唯一对象,例如:select * from emp,实际被oracle 翻译为 select * from system.emp(system用户登录的),可以跨schema操作,在system下可以查询 select * from sys.dual
查看当前用户及schema信息sql语句如下:select sys_context('userenv','current_user') current_user,sys_context('userenv','current_schema') current_schema from dual;
备注:sys_context函数是Oracle提供的一个获取环境上下文信息的预定义函数。该函数用来返回一个指定namespace下的parameter值
system 登录不能查看其他用户的对象,除非在对象前加该用户,如:desc abc.hh(显示abc用户下的hh表结构,desc hh 是不会显示abc中的hh表)
1.3、查看当前登录用户(show user)
例如:select * from user_users;
1.4、用另一个用户登录(conn 账号/密码)
例如:conn scott/tiger
1.5、更改用户默认表空间(alter user 用户名 default tablespace 表空间名)
例如:alter user scott default tablespace system;
1.6、删除用户(drop user 用户名)
例如:drop user scott;
若用户里面存在对象,要加cascade
例如:drop user abc cascade;
二、oracle中的权限
oracle中共有两种权限:系统权限和对象权限
2.1、系统权限
系统权限是指针对数据库中特定操作(如创建数据表)的许可
2.1.1 、获取系统权限相关信息
select * from dba_sys_privs;
select distinct privilege from dba_sys_privs;(系统所有的权限)
2.1.2、为用户分配系统权限
新创建的用户没有分配任何系统权限,不能登录系统或做其他操作,必须系统管理员先给其分配权限
如创建了用户abc,给其分配创建session的权限如下:
grant create session to abc;(授权后可以用abc账号登录数据库)
grant create table to abc(授权后可创建表)
2.1.3 、回收权限
revoke create session from abc;
2.2、对象权限
对象权限是指针对数据库中已存在的对象(如表、视图等) 的访问和操作,包括
select :用于查询表、视图、序列
insert:像表或视图中插入新的记录
update:更新表中的数据
delete:删除表中的数据
execute:函数、存储过程、程序包等的调用和执行
index:为表创建索引
references:为表创建外键
alter:修改表或序列的属性
2.2.1、为用户赋予select 权限(grant select on 表名 to 用户名)
system用户下存在表hh,要在abc 用户下查看hh表
system用户下授权:grant select on hh to abc;
abc用户下查看:select * from system.hh;
2.2.2、为用户赋予insert权限(grant insert on 表名 to 用户名)
system用户下存在表hh,要在abc 用户下向hh表插入数据
system用户下授权:grant insert on hh to abc;
abc用户下查看:insert into system.hh values('1','nana');
2.2.3、为用户赋予update权限(分所有列更新和部分列更新)
system用户下存在表hh,要在abc 用户下更新hh表中部分列中的数据
system用户下授权:grant update( name) on hh to abc;
abc用户下查看:update system.hh set name='john' where id=1;
system用户下存在表hh,要在abc 用户下更新hh表所有列中的数据
grant update on hh to abc;
2.2.4、 为用户赋予所有权限system用户下存在表hh,要在abc 用户下操作表hh(增删改查等所有对象权限)
grant all on hh to abc;
2.2.5、回收对象权限
收回abc在system用户下的hh表的查询权限
revoke select on from abc;
三、角色
一个角色可以赋予多个权限,再将角色赋给用户
3.1、角色的创建及使用
3.1.1、角色的创建(create role 角色名)
create role role_hh;
3.1.2、给角色赋权限
grant select on hh to role_hh;
3.1. 3、讲角色的权限赋给用户abc
grant role_hh to abc;
3.2、角色的继承
一个角色的权限可以赋给另外一个角色,如讲角色role_01的权限赋给角色role_02,roele_02将含有role_01的权限
grant role_01 to role_02;
3.3、角色的禁用和启用
3.3.1、角色的禁用
禁用用户abc的所有角色:alter user abc default role none;
3.3.2、角色的启用
为用户abc启用角色role_hh:set role role_hh;(在abc用户登录状态下)
数据字典:
用户:dba_users(管理员权限才能查看)user_users (普通用户权限查看)
权限:dba_sys_privs(系统权限数据字典) dba_tab_privs(数据表权限数据字典)
角色:session_roles(当前会话下该用户的默认角色数据字典)
oracle中角色的用户和权限管理,用户角色与权限控制相关推荐
- 招商管理、智慧招商、精准招商、地图招商、crm系统、企业画像、拜访跟进、销售简报、营销触达、坐席外呼、短信、签名、公海、客户、合同、业绩、员工、权限管理、角色、部门、费用、消息、交接、axure原型
招商管理.智慧招商.精准招商.地图招商.crm系统.企业画像.拜访跟进.销售简报.营销触达.坐席外呼.短信.签名.公海.客户.合同.业绩.员工.权限管理.角色.部门.费用.消息.交接.axure原型 ...
- Oracle数据库的认证方法、用户管理、权限管理和角色管理等
1 Oracle认证方法 操作系统身份认证 网络身份认证 Oracle数据库身份认证 数据库管理员认证 操作系统认证方式 如果采用操作系统认证方式,通常需要在操作系统中创建用户组,并且授予该组DBA权 ...
- java用户权限管理与角色设置(一)
实现业务系统中的用户权限管理--设计篇 B/S系统中的权限比C/S中的更显的重要,C/S系统因为具有特殊的客户端,所以访问用户的权限检测可以通过客户端实现或通过客户端+服务器检测实现,而B/S中,浏览 ...
- 【VUE项目实战】32、权限管理-实现角色列表
接上篇<31.权限管理-实现权限列表> 上个阶段我们完成了权限管理模块,本篇我们来介绍用户.角色和权限三者的关系,并完成角色管理列表模块. 一.权限管理业务分析 通过权限管理模块,控制不同 ...
- 在Oracle中如何使用Flashback Drop以及管理回收站
在Oracle11G中,当你删除一张表的时候,Oracle并不会立马就把这个表从数据库中移除,而是将该表与其相关的对象,比如建立在该表上的索引等改一个名字然后一起放在回收站当中.这个特性叫做Flash ...
- 转:权限管理——用户认证和用户授权
转自: https://blog.csdn.net/xdd19910505/article/details/51926540 因为做了权限的项目经理,so,恶补一下一个权限框架:shiro.其实作为框 ...
- linux的用户及权限管理,用户及权限管理
一.Linux用户.组的概念 1.用户 管理员:root,0 其他用户:1-65535 系统用户:1-499,守护进程获取资源进行权限分配 普通用户:500+,交互式登陆 2.组 管理员组:root, ...
- php 超级管理员,WordPress超级管理员功能,超权限管理用户,可修改登录名
wordpress本身的用户管理是以博客用户为导向的,因此其后台修改用户信息仅限于博客用户的角度可以修改的信息,而管理员虽然可以修改其他用户信息,但有一个问题是不能修改用户名和昵称(这里的昵称和显示名 ...
- 权限管理——用户认证和用户授权
因为做了权限的项目经理,so,恶补一下一个权限框架:shiro.其实作为框架首要目标是易于使用和理解.安全有时候是很复杂的,甚至是痛苦的,但框架没有必要这样.框架应该尽可能掩盖复杂的地方,露出一个干净 ...
最新文章
- 模拟post请求--测试api是否可用--再交给ios开发
- SD--如何配置发票分割开票
- 相关系数excel_跟着思想学外汇-如何用Excel计算货币相关性
- Python函数之初体验
- Kafka C++客户端库librdkafka笔记
- 【原】lua的table深拷贝
- 简单理解 unix (liunx)inode
- 请用旧版的 Scala-2.11 搭配 Spark-2.4.8 / hadoop-2.7
- tomcat 占用 dos
- Java EE开发四大常用框架(1)
- 标准化考点考场高考英语听力广播系统解决方案
- 想做合格的产品经理,你需要这个证书
- NPN与PNP型传感器的区别
- 刘兴亮 -- IT博客-中国最具人气的IT博客-赛迪网IT人家园
- “快播时代”终结:清内容、关服务器!
- ASP.NET编写一个简易网站
- The APR based Apache Tomcat Native library which allows optimal performance in production ...解决方案
- Pcb课程设计2(GD32E230核心板)
- python-docx 标题字体设置失败如何解决?
- 并行与并发的区别,一瞬间就能理解并记住
热门文章
- 360移动开发者平台上架App
- 30 + 优秀电子商务网站设计灵感
- [洛谷3041]视频游戏的连击Video Game Combos
- 基于vue通用模板渲染Table
- CSS3 object-position/object-fit属性(转载)
- 项目进度管理 试题分析
- 【Introductory Biology】Lecture 13 - Genetics 2 - Rules of Inheritance 遗传学2 - 继承规则
- 2018级SDUTACM集训队第二次选拔赛 E - 月白瞳美的星沙
- 使用 Winston 和 Log4js 记录 Node.js 应用程序
- 谷歌翻译工具新改版,支持全球51种语言翻译功能