在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 - 用户和角色的权限管理的更多相关文章

  1. Oracle用户及角色的权限管理[Oracle基础]

    1.查看全部用户:   select * from dba_users;   select * from all_users;   select * from user_users; 2.查看用户或角 ...

  2. [转帖]PostgreSQL的用户、角色和权限管理

    PostgreSQL的用户.角色和权限管理 2018年05月18日 14:02:29 jerry-89 阅读数 6143 https://blog.csdn.net/eagle89/article/d ...

  3. Oracle 用户,角色,权限等

    权限管理是 Oracle 系统的精华,不同用户登录到同一数据库中,可能看到不同数量的表,拥有不同的权限.Oracle 的权限分为系统权限和数据对象权限,共一百多种,如果单独对用户授权,很囧,有一些用户 ...

  4. Oracle用户、角色、权限

    一.Oracle权限 系统权限:系统规定用户使用数据库的权限.(系统权限是对用户而言) 对象权限:某种权限用户对其它用户的表或视图的存取权限.(是针对表或视图而言的) 1.Oracle系统权限 ​ o ...

  5. MONGODB用户、角色和权限管理

      最近遇到很多问MONGODB用户认证授权方面的问题,现在特记录下来,与大家共享. 一.概念理解 1.用户概念 Mongodb的用户是由 用户名+所属库名组成 例如: 登录mongo  testdb ...

  6. PostgreSQL学习笔记(九) 用户、角色、权限管理

    PostgreSQL是一个多用户数据库,可以为不同用户指定允许的权限. 角色PostgreSQL使用角色的概念管理数据库访问权限. 根据角色自身的设置不同,一个角色可以看做是一个数据库用户,或者一组数 ...

  7. PostgreSQL 用户、角色、权限管理

    PostgreSQL是一个多用户数据库,可以为不同用户指定允许的权限. 角色 PostgreSQL使用角色的概念管理数据库访问权限. 根据角色自身的设置不同,一个角色可以看做是一个数据库用户,或者一组 ...

  8. Oracle 用户、角色、权限(系统权限、对象权限)的数据字典表

    1 三者的字典表 1.1 用户 select * from dba_users; select * from all_users; select * from user_users; 1.2 角色 s ...

  9. springBoot+springSecurity 数据库动态管理用户、角色、权限

    使用spring Security3的四种方法概述 那么在Spring Security3的使用中,有4种方法: 一种是全部利用配置文件,将用户.权限.资源(url)硬编码在xml文件中,已经实现过, ...

随机推荐

  1. Facebook开源Zstandard新型压缩算法代替Zlib 简单使用

    简介 Zstandard(缩写为Zstd)是由Facebook的Yann Collet开发的一个无损数据压缩算法.Zstandard在设计上与DEFLATE(.zip.gzip)算法有着差不多的压缩比 ...

  2. while和do while循环的简要概述

    循环结构 1.while结构 在英文中"while"这个词的意思是"当",而在 Java 程序设计中,也可以将其理解为"当",其语法结构是: ...

  3. oracle删除数据后表空间仍过大问题解决方法

    -----亲测有效------- --一.备份原始数据库库--1.备份空表--在plsql里面执行一下这句话 然后把结果集 再执行一把 再导数据select 'alter table '||table ...

  4. Css3视频教程下载

    本套教程主要讲解了大量的CSS3新功能,包括: 边框.圆角.背景.渐变.阴影.文本特效.2D/3D转换.过渡.动画.伪类元素的使用等,同时伴随了大量的实例制作,比如CSS3实现红心的制作,火焰字.多彩 ...

  5. c#中foreach的一种用法

    以下定义的MyClass类中的addnum方法使用了一个数组型参数b: public class MyClass { ; public void addnum(ref int sum, params ...

  6. 闭包中this指向window的原因

    var t={ b:1, w:function a(){ var b=2; alert(this.b); //弹出t对象的b属性 alert(b); //弹出a函数的b变量 return functi ...

  7. Spring Boot 集成 Mybatis

    原文:https://github.com/x113773/testall/issues/9 方式一:mybatis-spring-boot-starter---这种方式比较简单,具体步骤如下:1. ...

  8. django-xadmin中APScheduler的启动初始化

    环境: python3.5.x + django1.9.x +  xadmin-for-python3 APScheduler做为一个轻量级和使用量很多的后台任务计划(scheduler)包,可以方便 ...

  9. bootstrap-datepicker的bug:有日期输入的地方在下个月页面选择当天日期会以当天日期减少一个月显示

    Bug复现详细描述:先选择今日日期,然后点击下个月的某个日期,注意,是直接点击下个月的某个日期,不能通过日期显示tab的下个月箭头进入下个月再来点击某个日期,然后再直接点击本月的今日日期.然后bug会 ...

  10. 【Android Developers Training】 98. 获取联系人列表

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...