ORACLE - 用户和角色的权限管理
在ORACLE中,创建用户后需要授权才能使用。
一、用户管理
1. 用户和角色信息查询
--查询所有用户
SQL> select * from dba_users; --经授予的用户或角色的系统权限
select * from dba_sys_privs; --数据对象上的所有权限
SQL>select * from dba_tab_privs; --查看当前用户的权限和角色
SQL>select * from user_sys_privs;
SQL>select * from role_sys_privs; --查询自己把权限授予给其他用户情况
SQL> select * from user_tab_privs;
2. 授权、锁定与解锁、密码更变、用户删除、权限回收等
grant create session to name//创建session
grant create table to name//创建表
grant create view to name//创建视图
grant unlimited tablespace to name//无表空间使用限制
grant dba to name//管理员授权
--用户锁定/解锁
alter user username account lock/unlock;
--更变用户密码
alter user username identified by yourpassword;
--删除用户,同时删除用户下面的所有表
drop user scott cascade;
--权限回收
revoke create table from scott cascade constraints;
3. 用户资源配置(CPU/MEMORY等资源分配)
创建用户时,没有指定资源配置,则自动设置为default。
下面示例密码资源并分配给用户:
SQL>create profile pro_name_xx limit password_reuse_max password_reuse_time /unlimited;
SQL>alter user scott profile pro_name_xx;
SQL>alter user scott profile DEFAULT;
SQL>drop profile pwd_profile;
限制用户尝试登陆失败次数的资源:
SQL> create profile limit_login_failure limit failed_login_attempts ;
二、角色管理
下面是数据库几种角色拥有的权限关系,可以用select * from dba_roles查看所有角色 :
|
名称 |
脚本 |
|
|
connect |
SQL.BSQ |
ALTER SESSION |
|
create cluster/database link/sequence/session/synonym/table/view |
||
|
resource |
SQL.BSQ |
create cluster/indextype/operator/producedure/sequence/table/tigger/type |
|
dba |
SQL.BSQ |
所有管理权限 |
|
exp_full_database |
CATEXP.SQL |
导出权限: Select any table Backup any table Execute any producedure Execute any type ……. |
|
imp_full_database |
CATEXP.SQL |
所有导入权限 |
|
...... |
||
与角色相关的表如下:
DBA_COL_PRIVS 数据库列上的所有权限
DBA_ROLE_PRIVS 显示已经授予用户或其他角色的角色
DBA_TAB_PRIVS 数据库对象上的所有权限
DBA_SYS_PRIVS 已经授予用户或角色的系统权限
1. 角色的创建、授权、修改与删除
用户可自定义角色,然后授予上面的一个或者几个权限
SQL>create roke xxx identified by xxx; -- 可以为角色设置密码,更改和删除角色需要时需要输入密码才能执行。
注:角色名与用户名是在同一个域中,不能重名。
SQL>grant create session to role_xxx; -- 将创建会话权限授予角色role_xxx
SQL>grant role_name to user_name; -- 将角色分配给用户
SQL> revoke roke_r from scott; -- 回收角色
SQL>alter roke xxx not identified;
SQL>alter user user_xxx default role roke_xxx;
SQL> alter user user_xxx default role all expect role_xxx;
SQL>drop role role_name;
ORACLE - 用户和角色的权限管理的更多相关文章
- Oracle用户及角色的权限管理[Oracle基础]
1.查看全部用户: select * from dba_users; select * from all_users; select * from user_users; 2.查看用户或角 ...
- [转帖]PostgreSQL的用户、角色和权限管理
PostgreSQL的用户.角色和权限管理 2018年05月18日 14:02:29 jerry-89 阅读数 6143 https://blog.csdn.net/eagle89/article/d ...
- Oracle 用户,角色,权限等
权限管理是 Oracle 系统的精华,不同用户登录到同一数据库中,可能看到不同数量的表,拥有不同的权限.Oracle 的权限分为系统权限和数据对象权限,共一百多种,如果单独对用户授权,很囧,有一些用户 ...
- Oracle用户、角色、权限
一.Oracle权限 系统权限:系统规定用户使用数据库的权限.(系统权限是对用户而言) 对象权限:某种权限用户对其它用户的表或视图的存取权限.(是针对表或视图而言的) 1.Oracle系统权限 o ...
- MONGODB用户、角色和权限管理
最近遇到很多问MONGODB用户认证授权方面的问题,现在特记录下来,与大家共享. 一.概念理解 1.用户概念 Mongodb的用户是由 用户名+所属库名组成 例如: 登录mongo testdb ...
- PostgreSQL学习笔记(九) 用户、角色、权限管理
PostgreSQL是一个多用户数据库,可以为不同用户指定允许的权限. 角色PostgreSQL使用角色的概念管理数据库访问权限. 根据角色自身的设置不同,一个角色可以看做是一个数据库用户,或者一组数 ...
- PostgreSQL 用户、角色、权限管理
PostgreSQL是一个多用户数据库,可以为不同用户指定允许的权限. 角色 PostgreSQL使用角色的概念管理数据库访问权限. 根据角色自身的设置不同,一个角色可以看做是一个数据库用户,或者一组 ...
- Oracle 用户、角色、权限(系统权限、对象权限)的数据字典表
1 三者的字典表 1.1 用户 select * from dba_users; select * from all_users; select * from user_users; 1.2 角色 s ...
- springBoot+springSecurity 数据库动态管理用户、角色、权限
使用spring Security3的四种方法概述 那么在Spring Security3的使用中,有4种方法: 一种是全部利用配置文件,将用户.权限.资源(url)硬编码在xml文件中,已经实现过, ...
随机推荐
- 关于并发,关于IIS你真的了解吗?(一)
本文仅代表带个人观点及理解,本人只是一个编程小菜鸟,如果有不对的地方.请大佬轻喷! 前言:对于很多工作时间短或者编程经验不足的程序员来说,大多数会觉得并发这个词离自己太遥远,之所以知道并发也不过是因为 ...
- 多线程并发执行任务,取结果归集。终极总结:Future、FutureTask、CompletionService、CompletableFuture
目录 1.Futrue 2.FutureTask 3.CompletionService 4.CompletableFuture 5.总结 ================正文分割线========= ...
- 写代码中遇到的问题(php接收不到传过来的json数据,php使用utf8的用法)
今天写代码用python处理完数据,传给php服务器后,发现接收不到数据,因为是跨域,所以加了消息头:header('Access-Control-Allow-Origin:*');但是并没有什么卵用 ...
- 深入理解PHP对象注入
0x00 背景 php对象注入是一个非常常见的漏洞,这个类型的漏洞虽然有些难以利用,但仍旧非常危险,为了理解这个漏洞,请读者具备基础的php知识. 0x01 漏洞案例 如果你觉得这是个渣渣洞,那么请看 ...
- Qt使用MySQL笔记一
原始日期:2015-08-20 18:01 今天开发项目时,遇到一个问题,经过自己不断尝试,终于找到了解决办法,于是赶紧记下来,不然过段时间可能又忘了呵呵,从而重蹈覆辙,浪费时间~问题是这样的:在插入 ...
- 10.解决VUEX刷新的时候出现数据消失
通常,我们在使用vue编写页面时,会需要使用vuex在组件间传递(或者说共同响应)同一个数据的变化.例如:用户的登录信息. 下面,我们使用传递用户登录信息的例子来一步步解决这个问题. 首先,我们的第一 ...
- Android如何实现定位获取
一:GPS定位: (1).要实用Adnroid平台的GPS设备,首先需要添加上权限,所以需要添加如下权限: uses-permission android:name= android.permissi ...
- 新技术探究之 GraphQL
What? GraphQL 是一种类似于 SQL 的结构化查询语言,由 facebook 于2012年创造,于2015年开源.SQL 在服务端定义,GraphQL 在客户端定义,也就是说 GraphQ ...
- Python3.5学习笔记-文件操作
在Python中,操作文件对象使用open函数来创建,下表列出了常用的操作file的函数: 序号 方法及描述 1.file.close() 关闭文件.关闭后文件不能再进行读写操作. 2.file.fl ...
- 把sql输出成。sql文件
作者原创,转载注明出处: 代码: package importfile; import java.io.*; import java.io.PrintWriter; import java.sql.C ...