数据库控制语言的功能室控制用户对数据库的存取权限。

用户对某类数据具有何种操作权限是有DBA决定的。Oracle

通过GRANT语句完毕权限的授予,通过REVOKE语句完毕对权限的收回。

权限分为系统权限和对象权限。系统权限是对于数据库的权限。对象权限是操作数据库对象的权限。

创建用户

基本的语法:

CREATE USER user_name

IDENTIFIED BY   password;

在用户创建成功之后,系统管理员DBA会赋予用户一些权限,来完毕对应的操作。

不具有某些操作权限的用户,是无

法完毕操作的。

例:创建用户test ,password:test001

create user test

identified by test001

可是让使用上面创建的用户和password进行登录时确无法登录成功。

由于该没用没有create session 权限。

要授予该权限则要使用grant语句。

授予权限

基本的语法:

GRANT  权限1 ,权限2。... TO  user_name ;

应用程序开发人员。一般应该具有下面权限:

CREATE SESSION(创建会话)
CREATE TABLE(创建表)
CREATE SEQUENCE(创建序列)
CREATE VIEW(创建视图)
CREATE PROCEDURE(创建过程)

例:给test用户授予创建会话权限。

grant create session to test ;

将create session 赋予用户之后,就能够正常的与数据库连接了。表示已经创建了一个session 会话。此时假设该用

户要创建表。序列。视图,则要授予上面的所有权限。

在授予了create table 的权限之后。还是无法创建表的,由于

此时是没有表空间。还要分配表空间才干创建表。

上面的操作还是比較的繁琐的。事实上能够把多个权限封装成一个角色,在把该角色赋予给用户。

角色

创建角色:

CREATE ROLE  testrole ;

为角色赋予权限:

GRANT  CREATE TABLE , CREATE VIEW TO testrole ;

将角色授予用户:

GRANT testrole TO test ;

Oracle 中提供了两个基本的角色:CONNECT ,RESOURCE 。能够直接将这个两个角色授予给用户。

改动用户password

基本的语法

ALTER USER user_name

IDENTIFIED BY new_password ;

来改动password。

分配对象权限

       不同的对象具有不同的对象权限,对象的拥有者拥有全部权限。对象的拥有者能够向外分配权限。

基本的语法:
GRANT 操作 ON 其它用户.表名 TO 用户 

例:假设test用户想要訪问scott用户下的emp表。并进行查询、删除。则要取得訪问该表的权限。

GRANT select , delete ON scott.emp TO  test ;

此时test用户,便能够对emp表进行查询和删除操作 了 。

WITH GRANT OPTION 和PUBLIC keyword。with grant option 是被授权的用户还可将获得的权限在授给其它

的用户。public 是为全部的用户都分配权利。

回收权限

基本的语法

rovoke  权限 on 用户.表名称 from 用户 ;

例:回收test用户获得查询和删除权限

revoke select ,delete on scott.emp from test ;

除了使用语句创建权限之外。也能够直接在Enterprise  Manager  console 下进行创建。不在赘述。

Oracle 学习笔记 13 -- 控制用户权限的更多相关文章

  1. Oracle学习笔记之七(用户管理、角色与权限、导入导出等)

    下面这些基本的SQL语句应该熟悉,能够灵活运用.最好在不查资料的情况下,能够写出如下的任何代码. 1. 用户操作 --create user username identified by passwo ...

  2. oracle学习笔记一:用户管理(1)简单的命令

    1,打开操作界面 我们在安装好oracle后可以在两个地方打开要操作的界面.请看图一: 或者在运行窗口输入sqlplus.其实这里也是调用了bin下面的sqlplus.exe. 在打开dos命令行窗口 ...

  3. oracle学习笔记一:用户管理(3)用户口令管理

    当某个用户不断的尝试密码进行登录数据库是很危险的,因此对密码(口令)的管理十分重要.好在我们可以限制登录次数,超过某些次数的登录将会把用户锁住,隔一段时间才允许其登录,这和你的手机是不是有点一样,你的 ...

  4. oracle学习笔记一:用户管理(2)创建删除用户

    本文主要介绍如何创建和删除用户,当然里面牵涉很多知识,慢慢道来. 1,创建用户 需求:假设你是oracle管理员,当一个同事入职,你需要分配给一个账号. 创建用户,一般需要有相应权限的用户才可以创建用 ...

  5. Prometheus监控学习笔记之Grafana用户权限分组

    Grafana有账户分权和管理功能,不过和一般的账户分权管理操作不一样.Grafana通过admin账户建立organization,在不通的org内配置数据源和用户,用户隶属于不通的org,只能看到 ...

  6. Oracle系列十五 控制用户权限

    权限 数据库安全性 --系统安全性 --数据安全性 系统权限: 对于数据库的权限 对象权限: 操作数据库对象的权限 系统权限 超过一百多种有效的权限 数据库管理员具有高级权限以完成管理任务,例如: 创 ...

  7. Linux学习笔记13-用户和组

    操作系统通过用户.组概念来管理使用计算机的人 用户代表一个使用计算机的使用者,操作系统通过用户概念限制一个使用者能够访问的资源 组用来组织管理用户 用户具有以下概念: 每个用户有一个用户名和一个用户I ...

  8. oracle控制用户权限命令

    ORACLE控制用户权限: 首先使用系统中的拥有DBA权限的账号(system)登录: 一.创建用户: 1.DBA使用creater user语句创建用户: --创建登录用户名为:user01,密码为 ...

  9. Oracle学习笔记之四,SQL语言入门

    1. SQL语言概述 1.1 SQL语言特点 集合性,SQL可以的高层的数据结构上进行工作,工作时不是单条地处理记录,而对数据进行成组的处理. 统一性,操作任务主要包括:查询数据:插入.修改和删除数据 ...

随机推荐

  1. SQL语法精讲(包括建库、建表、建视图、查询、增加、删除、)

    SQL语法精讲(包括建库.建表.建视图.查询.增加.删除.修改) SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELE ...

  2. 【HDU 5015】233 Matrix

    [题目链接] http://acm.hdu.edu.cn/showproblem.php?pid=5015 [算法] 矩阵乘法 [代码] #include<bits/stdc++.h> u ...

  3. 初涉springboot

    1.首先,我们需要了解微服务是什么? 微服务 (Microservices) 是一种软件架构风格,它是以专注于单一责任与功能的小型功能区块 (Small Building Blocks) 为基础,利用 ...

  4. WEB前端开发常用的优化技巧汇总

    减少HTTP请求次数或者减少请求数据的大小 页面中每发送一次HTTP请求,都需要完成请求+响应这个完整的HTTP事务,会消耗一些时间,也可能会导致HTTP链接通道的堵塞,为了提高页面加载速度和运行的性 ...

  5. Android TabLayout+ViewPager禁止滑动

    1.重写ViewPager并重写覆盖ViewPager的onInterceptTouchEvent(MotionEvent arg0)方法和onTouchEvent(MotionEvent arg0) ...

  6. android webview一些注意事项(持续更新)

    1.loadUrl() 的参数必须“http://”开头: 2.如果用到内部类获取页面内容,此类不能混淆: 3.2中情况保持不混淆需要将webview所在的包都保持不混淆,常规的保持类不混淆不生效: ...

  7. python包管理(distutils、easy_install、pip、setup.py/requirements.txt、wheel)

    distutils.distutils2 distutils是 python 标准库的一部分,2000年发布.使用它能够进行 python 模块的 安装 和 发布. distutils2 被设计为 d ...

  8. python 一句话输出26个英文字母

    chr(i) # return i character ord(c) # return integer >>> [chr(i) for i in range(97,123)] ['a ...

  9. Qwiklab'实验-DynamoDB, Redshift, Elasticsearch'

    title: AWS之Qwiklab subtitle: 4. Qwiklab'实验-Amazon DynamoDB, Amazon Redshift, Elasticsearch Service' ...

  10. python之类的组合

    类的组合 学校与课程没有共同点,课程与老师没有共同点,但是学校与课程有关联,课程与老师有关联:学校.课程.老师是三个完全不同的类:课程是属于学校的,老师是教课程的,此时我们就用到类的组合来关联,学校- ...