首页 > 数据库 >13、Oracle中的控制用户权限

13、Oracle中的控制用户权限

时间:2024-07-14 21:54:16浏览次数:10  
标签:13 GRANT 创建 create 用户 Oracle 权限 CREATE

最近项目要用到Oracle,奈何之前没有使用过,所以在B站上面找了一个学习视频,用于记录学习过程以及自己的思考。
视频链接:
【尚硅谷】Oracle数据库全套教程,oracle从安装到实战应用
如果有侵权,请联系删除,谢谢。

学习目标:

  • 创建用户
  • 创建角色
  • 使用GRANT 和 REVOKE 语句赋予和回收权限
  • 创建数据库联接

1、权 限

  • 数据库安全性:
    • 系统安全性
    • 数据安全性
  • 系统权限: 对于数据库的权限
  • 对象权限: 操作数据库对象的权限

1.1、系统权限

超过一百多种有效的权限

数据库管理员具有高级权限以完成管理任务,例如:

  • 创建新用户
  • 删除用户
  • 删除表
  • 备份表

2、创建用户

DBA 使用 CREATE USER 语句创建用户

CREATE USER user              			   
IDENTIFIED BY   password;


-- 示例
CREATE USER  scott
IDENTIFIED BY   tiger;
User created.

2.1、用户的系统权限

用户创建之后, DBA 会赋予用户一些系统权限

GRANT privilege [, privilege...]			
TO user [, user| role, PUBLIC...];

以应用程序开发者为例, 一般具有下列系统权限:

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

2.2、赋予系统权限

DBA 可以赋予用户特定的权限

GRANT  create session, create table, 
       create sequence, create view
TO     scott;
Grant succeeded.

2.3、创建用户表空间

用户拥有create table权限之外,还需要分配相应的表空间才可开辟存储空间,用于创建的表

ALTER USER atguigu01 QUOTA UNLIMITED 
ON users
User altered.

2.4、修改密码

DBA 可以创建用户和修改密码

用户本人可以使用 ALTER USER 语句修改密码

ALTER USER scott             			  
IDENTIFIED BY lion;
User altered.

3、角 色

3.1、创建角色并赋予权限

  • 创建角色
create role manager;
  • 为角色赋予权限
grant create session, create table, create view to manager;
  • 将角色赋予用户
grant manager to dehaan, kochhar;

4、对象权限

4.1、对象权限

  • 不同的对象具有不同的对象权限
  • 对象的拥有者拥有所有权限
  • 对象的拥有者可以向外分配权限
 GRANT	object_priv [(columns)]
 ON		object
 TO		{user|role|PUBLIC}
 [WITH GRANT OPTION];

4.2、分配对象权限

分配表 EMPLOYEES 的查询权限

GRANT  select
ON     employees
TO     sue, rich;
Grant succeeded.

分配表中各个列的更新权限

GRANT  update 
ON     scott.departments
TO     atguigu
Grant succeeded.

4.3、WITH GRANT OPTION和PUBLIC关键字

WITH GRANT OPTION 使用户同样具有分配权限的权利

GRANT  select, insert
ON     departments
TO     scott
WITH   GRANT OPTION;
Grant succeeded.

向数据库中所有用户分配权限

GRANT  select
ON	  alice.departments
TO	  PUBLIC;
Grant succeeded.

4.4、查询权限分配情况

4.5、收回对象权限

使用 REVOKE 语句收回权限
使用 WITH GRANT OPTION 子句所分配的权限同样被收回

REVOKE {privilege [, privilege...]|ALL}
ON	  object
FROM   {user[, user...]|role|PUBLIC}
[CASCADE CONSTRAINTS];

收回对象权限举例

REVOKE  select, insert
ON      departments
FROM    scott;
Revoke succeeded.

总结:
使用 DCL 控制数据库权限,创建数据库联接:

标签:13,GRANT,创建,create,用户,Oracle,权限,CREATE
From: https://www.cnblogs.com/huageyiyangdewo/p/18302014

相关文章

  • 12、Oracle中的其它数据库对象
    最近项目要用到Oracle,奈何之前没有使用过,所以在B站上面找了一个学习视频,用于记录学习过程以及自己的思考。视频链接:【尚硅谷】Oracle数据库全套教程,oracle从安装到实战应用如果有侵权,请联系删除,谢谢。学习目标:创建、维护和使用序列创建和维护索引创建同义词1、......
  • 2024 暑假友谊赛 1 (7.13)zhaosang
    A-Ahttps://vjudge.net/contest/638765#problem/A一开始贪心做不出来,后面发现是dp找到转移方程即可,01dp问题代码如下#include<bits/stdc++.h>usingnamespacestd;usingll=longlong;llv[10000010];lln;llans;llprefix[10000010];intmain(){ intN; cin>>......
  • 2024/7/13 ABC362 比赛记录
    7/14:昨晚打的abc,外面下着大雨;1650ptsrank975T1:简单签到题,愣是被我拖了7min死因:开赛时老师开始收手机,一直叫我名,我一着急装了两个翻译插件,导致页面错版。时间宝贵,于是我艰难的对照样例勉强读懂题(T2:计算几何?给平面直角坐标系3点,判rt三角形。直接double勾股定理算边......
  • 13 - matlab m_map地学绘图工具基础函数 - 介绍创建管理颜色映射的函数m_colmap和轮廓
    13-matlabm_map地学绘图工具基础函数-介绍创建管理颜色映射的函数m_colmap和轮廓图绘制颜色条的函数m_contfbar0.引言1.关于m_colmap2.关于m_contfbar3.结语0.引言  本篇介绍下m_map中用于创建和管理颜色映射函数(m_colmap)和为轮廓图绘制颜色条的函......
  • T113-i系统启动速度优化方案
    背景:        硬件:T113-i+emmc        软件:uboot2018+linux5.4+QT应用        分支:longan问题:        全志T113-i的官方系统软件编译出的固件,开机启动时间10多秒,启动时间太长,远远超过行业内linux系统的开机速度,需要进一步优化。T1......
  • 【嵌入式DIY实例-ESP8266篇】-LCD ST7789显示DS1307 RTC时间数据
    LCDST7789显示DS1307RTC时间数据文章目录LCDST7789显示DS1307RTC时间数据1、硬件准备与接线2、代码实现本文将介绍如何使用ESP8266NodeMCU板和DS1307RTC集成电路构建简单的实时时钟和日历(RTCC),其中时间和日期打印在ST7789TFT显示模块上。S......
  • 银河麒麟V10SP1搭建oracle19c(单库)
    遇到的坑:1.PRVG-0282问题解决:在先决条件检查步骤,PRVG-0282:无法检索操作系统分发ID的报错,该问题是由于字符集和环境变量问题,只需在执行安装前:使用oracle用户登录,不要root跳到oracle用户下exportCV_ASSUME_DISTID=RHEL7.6exportLANG=en_US然后刷新环境变量在执行./runInstal......
  • Solution - Codeforces 1311E Construct the Binary Tree
    先去考虑找一下无解条件。首先就是有\(d\)关于\(n\)的下界\(L\),就是弄成一颗完全二叉树的答案。其次有\(d\)关于\(n\)的上界\(R\),就是成一条链的样子。首先当\(d<L\)或\(R<d\)时显然无解。对于\(L\led\leR\)又如何去判定。能发现没有一个比较好的判定......
  • 突破权限壁垒:彻底解决PyCharm中无法写入的权限问题
    突破权限壁垒:彻底解决PyCharm中无法写入的权限问题引言在使用PyCharm进行开发时,可能会遇到权限不足导致无法写入文件或目录的问题。这种情况通常发生在尝试保存文件到一个没有写权限的目录,或者PyCharm没有足够的权限去修改系统文件时。本文将提供一份详尽的指南,帮助你诊断......
  • 小白学习微信小程序开发中的用户管理与权限设置
    用户管理与权限设置是微信小程序开发中非常重要的一部分,它关乎到小程序的安全性和用户体验。本文将从用户管理和权限设置两个方面来详细介绍相关内容,并提供代码案例。一、用户管理用户管理是指对小程序的用户进行管理,包括用户注册、登录、信息获取等操作。下面以一个简单的用......