oracle数据库如何创建用户和角色,并给其赋权?
一、创建用户并赋予权限
1、创建用户
create user wangxiangyu identified by wangxiangyu;
2、赋权
grant dba to wangxiangyu;
grant create session to wangxiangyu; --会话权限(没有该权限无法登录)
3、查看已经赋予用户的系统权限
select * from user_sys_privs;
二、创建角色
角色,即权限的集合,可以把一个角色授予给用户
1、创建角色
create role myrole;
2、赋权
grant create session to myrole;--将创建session的权限授予给角色myrole
3、赋角色给用户
grant myrole to zhangsan;--授予zhangsan用户myrole的角色
4、删除角色
drop role myrole;
查看所有用户
select * from dba_users;
select * from all_users;
select * from user_users;
alter user user_name account lock; 锁住用户
alter user user_name account unlock; 解锁用户
查询当前用户所拥有的权限
select * from session_privs;
查看用户被赋予的系统权限(直接赋值给用户或角色的系统权限)
select * from dba_sys_privs where grantee = 'RESOURCE';
select * from user_sys_privs;
注:USER_SYS_PRIVS 视图列出已经授予用户的系统权限。
它的列包括Username、Privilege和 Admin_Option(设置为YES 或NO 的一个标志,用来指出是否用with admin option 授予权限),直接授予用户的所有系统权限都可以通过该视图显示,通过角色授予用户的系统权限不能在此视图中显示。
查看所有角色
select * from dba_roles;
查看用户所拥有的角色
select * from session_roles order by role;--返回当前用户被授予的全部角色, 包括嵌套授权的角色
select * from dba_role_privs;
select * from user_role_privs;
查看当前用户角色所包含的权限
select * from role_sys_privs where role = 'CONNECT';
查看用户对象权限
select * from dba_tab_privs;
select * from all_tab_privs;
select * from user_tab_privs;
查看哪些用户有sysdba或sysoper系统权限(查询时需要相应权限)
select * from v$pwfile_users;
查看用户与默认表空间的关系
select username, default_tablespace from dba_users where username='SCOTT';
查看当前用户的表
select * from user_tables;
可视化赋权:
1、使用ins用户建表
2、使用mobapp用户(管理员)将ins用户的某个表赋权给odso用户
users——>ins,选中要赋权的表赋权(右键,编辑,权限)
等同于:grant select, insert, update, delete on ins.tb_cablecheck_equ_odso to odso;
3、使用odso用户登录,增删改查该表测试
命令赋权:
赋予权限:grant ... to ...
撤销权限:revoke ... from ...
登陆
grant create session to zhangsan;
使用表空间
grant unlimited tablespace to zhangsan;
创建表
grant create table to zhangsan;
删除表
grant drop table to zhangsan;
grant drop on table_name to user_name;
插入表
grant insert table to zhangsan;
grant insert on table_name to user_name;
grant insert(id) on table_name to user_name;
更新表数据
grant update table to zhangsan;
grant update on table_name to user_name;
grant update(id) on table_name to user_name;
修改表结构
grant alter table on table_name to user_name;
查询表
grant select on table_name to user_name;
创建过程
grant create any procedure to username;
执行过程
grant execute any procedure to username;
grant execute on ins.p_trun_link_odso to odso_insert;
授予所有权限(all)给所有用户(public)
grant all to public;
权限传递
即用户A将权限授予B,B可以将操作的权限再授予C,
命令如下:
grant alter table on table_name to user_name with admin option;
grant update on table_name to user_name with grant option; --转移更新权限
grant alter table on table_name to user_name with grant option;
oracle数据库如何创建用户和角色,并给其赋权?的更多相关文章
- oracle数据库如何创建用户并授予角色
目标:1. 创建角色test1_role, 授予 CREATE PROCEDURE, CREATE SEQUENCE, CREATE SYNONYM, CREATE TABLE, CREATE T ...
- Oracle数据库之创建表空间与用户
Oracle数据库之创建表空间与用户 一.创建表空间 基本语法表述: CREATE TABLESPACE tablespace_name [DATAFILE datafile_spec1 [,data ...
- Oracle数据库如何创建DATABASE LINK?
Oracle数据库如何创建DATABASE LINK? 2011-08-09 14:54 taowei20061122 CSDN博客 http://blog.csdn.net/taowei20061 ...
- Spring-Security (学习记录三)--读取数据库中的用户和角色
目录 1.先将hibernate的环境整合进来 2.创建一个数据库security,执行security.sql 3.修改spring-security.xml,采用数据库的方式读取用户跟角色 4.u ...
- Oracle数据库之创建表结构
Oracle数据库之创建表结构 主键与外键 主键:关系型数据库中的一条记录中有若干个属性,若其中的某一个属性组(可以是一个属性,也可以是多个)能唯一标识一条记录,那么该属性组就是主键. 外键:关系型数 ...
- Oracle创建用户、角色、授权、建表
oracle数据库的权限系统分为系统权限与对象权限.系统权限( database system privilege )可以让用户执行特定的命令集.例如,create table权限允许用户创建表,gr ...
- [转载]Oracle创建用户、角色、授权、建表
出处:https://www.cnblogs.com/roger112/p/7685307.html oracle数据库的权限系统分为系统权限与对象权限.系统权限( database system p ...
- oracle创建用户和角色、管理授权以及表空间操作
show user 显示当前用户connect username/password@datebasename as sysdba 切换用户和数据库 和用户身份 Oracle登录身份有三种: norma ...
- Oracle创建用户、角色、授权、建表空间
oracle数据库的权限系统分为系统权限与对象权限.系统权限( database system privilege )可以让用户执行特定的命令集.例如,create table权限允许用户创建表,gr ...
随机推荐
- [Week17] 个人阅读作业
个人阅读作业Week17 reading buaa software 解决的问题 这是提出问题的博客链接:http://www.cnblogs.com/SivilTaram/p/4830893 ...
- sql两个日期之间的查询统计
sql查询统计 sql语句: select count(code) as '统计',create_time as '订单时间' from sp_orders where datediff(create ...
- 第十周PSP&进度条
PSP 一.表格: D日期 C类型 C内容 S开始时间 E结束时间 I时间间隔 T净时间(mins) 预计花费时间(mins) 11月17号 站立会议 分配任务 13:00 13:30 0 3 ...
- 累计进度条 PSP
每周例行报告 本周PSP 类别 任务 开始时间 结束时间 被打断时间 总计工作时间 11月16日 代码 参与团队项目 10:05 12:12 15 112min 写博客 进度统计 21:52 2 ...
- Cisco Packet Tracer 交换机 2950-24 配置
大步骤1:设置交换机名字.特权模式口令.本地管理口令.远程登入口令 Switch>en 进入特权模式 Switch#conf t 进去全局配置模式 Enter configurati ...
- iptables之四表五链
iptables可谓是SA的看家本领,需要着重掌握.随着云计算的发展和普及,很多云厂商都提供类似安全组产品来修改机器防火墙. iptables概念 iptables只是Linux防火墙的管理工具而已. ...
- 99种用Racket说I love you的方式
99种用Racket说I love you的方式 来源 https://www.tuicool.com/articles/qiyeAz 原文 http://www.soimort.org/posts ...
- 【题解】 [NOI2009]变换序列 (二分图匹配)
懒得复制,戳我戳我 Solution: 这个题面出的很毒瘤,读懂了其实是个板子题qwq 题面意思:有个\(0\)至\(N-1\)的数列是由另一个数列通过加减得到的,相当于将\(A_i\)变成\(i\) ...
- Go语言?Docker?对新技术怎么看?
对于 Go 语言和 Docker 这两种技术,在国内的技术圈中有相当大的一部分人和群体还在持观望或是不信任的态度.所以,我想写这篇文章,从两个方面来论述一下我的观点和看法. 上个月,作为 Go 语言的 ...
- BZOJ1185 [HNOI2007]最小矩形覆盖 【旋转卡壳】
题目链接 BZOJ1185 题解 最小矩形一定有一条边在凸包上,枚举这条边,然后旋转卡壳维护另外三个端点即可 计算几何细节极多 维护另外三个端点尽量不在这条边上,意味着左端点尽量靠后,右端点尽量靠前, ...