语句

解释

Create user

Creates a user(usually performed by a DBA)

Grant

Gives other users privileges to access the objects

Create role

Creates a collection of privileges, usually performed by a DBA

Alter user

Changes a user's password

Revoke

Removes privileges on an object from users

通过数据字典查询

数据字典视图

描述

dba_users

用户

dba_ts_quotas

每个用户空间使用配额

dba_profiles

查询profile文件

dba_sys_privs

查询用户权限

dba_roles

查看角色

ROLE_SYS_PRIVS

授予角色的系统权限

ROLE_TAB_PRIVS

授予角色的表权限

USER_ROLE_PRIVS

授予用户的角色

USER_SYS_PRIVS

授予用户的系统权限

USER_TAB_PRIVS_MADE

用户对象上授予的权限

USER_TAB_PRIVS_RECD

授予用户的对象权限

USER_COL_PRIVS_MADE

用户某列上授予的对象权限

USER_COL_PRIVS_RECD

授予用户某列上的对象权限

什么是角色Role?

  • 数据库系统是role-base基于角色的系统.
    • 角色是权限的集合.
  • 操作系统中是基于组的系统,操作系统是用户组group.
    • 组是用户的集合.
  • 可以将权限赋予一个用户,也可以将角色赋予一个用户.
    • 创建一个角色;

CREATE ROLE manager;

  • 赋予给角色一个权限;

GRANT create table, create view To manager;

  • 赋予一个角色给用户;

GRANT manager To wendy, gaga;

角色

  • 建立用户而后为其授权是用户管理的基本操作,如果要想让一个用户正常进行操作,那么肯定需要授予很多的操作权限。如果说现在有100个用户,而且这些用户都需要具备相同的权限,那么在进行权限维护的时候肯定不可能针对于100个用户分别维护,而是需要将所有用户的权限一起进行维护,而在这时就只能够将多个权限加入到一个角色之中,通过对角色的维护来实现对多个用户的权限维护(可以是系统权限,也可以是对象权限),
  • 所谓的角色就是指一组相关权限的集合。

创建角色

如果用户要创建角色,则可以通过DBA或者是具有相应“CREATE ROLE”权限的用户来完成,

角色的创建语法如下所示。

CREATE ROLE

ALTER ROLE c##role_a IDENTIFIED BY hello1 ;

取消c##ole_b角色的密码

ALTER ROLE c##role_b NOT IDENTIFIED ;

  • 通过角色回收权限

将CREATE VIEW的权限从c##role_a角色中回收

REVOKE CREATE VIEW FROM c##role_a ;

删除角色

  • 当某个角色不再使用时,可以直接利用DROP命令将其删除。

DROP ROLE 角色名称 ;

  • 删除c##role_b角色

DROP ROLE c##role_b ;

预定义角色

  • 在Oracle之中为了减轻管理员的负担,专门提供了一些预定义角色。
  • 将CONNECT、RESOURCE角色授予c##wendy用户
    • GRANT CONNECT , RESOURCE TO c##wendy ;

预定义角色

描述

EXP_FULL_DATABASE

导出数据库权限

IMP_FULL_DATABASE

导入数据库权限

SELECT_CATALOG_ROLE

查询数据字典权限

EXECUTE_CATALOG_ROLE

数据字典上的执行权限

DELETE_CATALOG_ROLE

数据字典上的删除权限

DBA

系统管理的相关权限

CONNECT

授予用户最典型的权限

RESOURCE

授予开发人员的权限

SQL Fundamentals || DCL(Data Control Language) || 角色ROLES的更多相关文章

  1. SQL Fundamentals || DCL(Data Control Language) || 系统权限&对象权限管理(GRANT&REVOKE)

    SQL Fundamentals || Oracle SQL语言 语句 解释 Create user Creates a user(usually performed by a DBA) Grant ...

  2. SQL Fundamentals || DCL(Data Control Language) || 用户管理&Profile概要文件

    SQL Fundamentals || Oracle SQL语言 语句 解释 Create user Creates a user(usually performed by a DBA) Grant ...

  3. 在CDS(Core Data Services)中使用DCL(Data Control Language)

    最近,我在玩ABAP CDS视图,并且遇到了一些权限方面的挑战.我在网上没看到有多少有关CDS开发的文档,因为它是个相当新的东西.因此,我决定写下这篇博客,也许我的想法可以帮助到一些人. 和你已经意识 ...

  4. SQL Fundamentals || Oracle SQL语言

    对于SQL语言,有两个组成部分: DML(data manipulation language) 它们是SELECT.UPDATE.INSERT.DELETE,就象它的名字一样,这4条命令是用来对数据 ...

  5. SQL之DCL

    DCL(Data Control Language)数据库控制语言  授权,角色控制等GRANT 授权REVOKE 取消授权 1)授权命令 grant,语法格式(SQL语句不区分大小写):Grant  ...

  6. SQL Fundamentals:Restricting and Sorting Data限制和排序数据(FROM-WHERE-SELECT-ORDER BY)

    SQL Fundamentals || Oracle SQL语言 控制操作的显示列:基本的SELECT语句 控制行:限定查询和排序显示 分组统计查询 限定查询:WHERE字句 排序显示:ORDER B ...

  7. 数据库原理及应用-SQL数据操纵语言(Data Manipulation Language)和嵌入式SQL&存储过程

    2018-02-19 18:03:54 一.数据操纵语言(Data Manipulation Language) 数据操纵语言是指插入,删除和更新语言. 二.视图(View) 数据库三级模式,两级映射 ...

  8. [AS/400] Control Language(CL) 基本概念

    本文内容源于 Go4AS400 简介 AS400 Control Language(CL) 是由指令(Command)组合而成,用于控制操作和调用系统功能.在 CL 程序中,指令用于和系统 OS400 ...

  9. SQL to JSON Data Modeling with Hackolade

    Review: SQL to JSON data modeling First, let’s review, the main way to represent relations in a rela ...

随机推荐

  1. JAVA自定义注解 和 运行时靠 反射获取注解,解决 shiro 注解型权限因子获取问题

    项目的权限分配,采用的是RBAC的设计模式.后台配置权限的时候,需要获取到所有的权限因子. 不经让我想起YII框架的SRBAC模块,还有以前的一个ecshop改造系统的权限配置方式,都采用的是PHP的 ...

  2. backbone学习笔记:视图(View)

    Backbone 视图对象主要用来渲染数据,监听事件. Backbone的视图对象可以展示Model数据,也可以把用户编辑的Model数据传递到后台,可以通过监听事件操作视图里的DOM元素 举例: v ...

  3. backbone学习笔记:集合(Collection)

    集合(Collection)是一个Backbone对象,用来组织和管理多个模型,它不仅仅是一个javascript数组,还提供了专门的方法来对集合进行排序.过滤和遍历,集合可以方便的与REST服务器进 ...

  4. iOS Runloop的超级讲解

    这是目前看过的最好的一片中文讲解RunLoop的文章,推荐给大家看一下,原文链接:http://blog.ibireme.com/2015/05/18/runloop/ https://segment ...

  5. mysql性能监控qps,tps,iops

    qps 每秒处理的查询数tps 每秒处理的事务数IOPS,每秒磁盘进行的I/O操作次数 给个方法或者思路,用啥工具或者命令,如何看,值是多少属于正常范围之内呢? Information from we ...

  6. 使用 redis “捕捉” “用户登录过期” 事件

    实现原理及步骤: 1)登录时,计算登录过期时间,以分钟为单位作key(例如:sign_timeout_201705212233),value方面自己发挥,需要什么数据就拼什么数据进去,只是要注意,一定 ...

  7. ASP正则匹配方法

    方法二:找到匹配的进行替换 ip="127.0.0.1" Function ReplaceTest(str,patrn, replStr) Dim regEx, str1 Set ...

  8. 【LeetCode OJ】Swap Nodes in Pairs

    题目:Given a linked list, swap every two adjacent nodes and return its head. For example,Given 1->2 ...

  9. php计算两个日期时间差(返回年、月、日)

    在PHP程序中,很多时候都会遇到处理时间的问题,比如:判断用户在线了多长时间,共登录了多少天,两个帖子发布的时间差或者是不同操作之间的日志记录等等.在文章中,简单地举例介绍了PHP中如何计算两个日期相 ...

  10. MVC C# JS根据后台传入对象设置

    今天(20170401)在借鉴代码的时候,看到如下一串 @if (Model.Product.ID > 0) { <script> $(function () { setSpecLi ...