Oracle--19、用户管理



在之前讲解完成的是DDL定义功能,但是除了DMLDDL之外还有一个DCLGRANTREVOKE), 指定是权限的控制,但是此部分的操作一般都有DBA 负责,下面就简单的演示以下关于用户的创建、权限分配功能。

1、如果要想进行用户的维护,那么首先一定是具备管理员权限的用户:syssystem。本次适应sys

CONN sys/change_on_install AS SYSDBA ;

2、创建一个新用户,用户名叫dog密码为wangwang

语法:

CREATE USER 用户名 IDENTIFIED BY 密码 ;

使用:

CREATE USER dog IDENTIFIED BY wangwang ;

但是这个时候也只是一个普通的用户而已,它连登录都做不了。此时的登录的错误提示信息:ORA-01045user DOG lacks CREATE SESSION privilege;logon denied,缺少创建SESSION的权限(每一个连接到数据库上的用户都被成为一个SESSION,缺少创建SESSION就意味着无法连接数据库)。

3、为dog用户授予连接数据库的权限

GRANT CREATE SESSION TO dog ;

之后就可以使用dog用户登录了。但是非常遗憾的是,此时dog用户只能够登录,无法进行数据表等对象的创建。

4、授予创建表的权限

GRANT CREATE TABLE TO dog ;

GRANT CREATE SEQUENCE TO dog ;

那万一现在还有很对对象要闯进。例如:索引、视图、过程、函数等。这样的授权是非常麻烦的,所以为了方便用户的维护,在Oracle里面提供了两个角色(每个角色包含有多个权限);RESOURCE CONNECT,一般只需要将这两个角色授予新用户即可。

5、将RESOURCECONNECT角色授予dog用户

GRANT CONNECT,RESOURCE TO dog

6、 用户维护

·修改用户密码;

ALTER USER dog IDENTIFIED BY miaomiao ;

·让用户的密码在登录一次之后失效,强迫用户去修改密码;

ALTER USER dog PASSWORD EXPIRE ;

·锁定一个用户,让用户无法使用;

ALTER USER dog ACCOUNT LOCK ;

·用户解锁

ALTER USER dog ACCOUNT UNLOCK ;

7、那么以上都是为用户授予的系统权限,可是除了系统权限之外,还存在有对象权限。所谓的对象权限指的是一个用户的操作权限,主要有四个权限:INSERTUPDATEDELETESELECT

范例:将scott.empINSERTSELECT权限授予dog

GRANT SELECT,INSERT ON scott.emp TO dog ;

8、权限回收,权限回收操作主要使用REVOKE指令完成;

范例:收回对象权限

REVOKE SELECT,INSERT ON scott.emp from dog ;

范例:回收角色

REVOKE CONNECT,RESOURCE FROM dog ;

范例:回收系统权限

REVOKE CREATE SESSION,CREATE TABLE,CREATE SEQUENCE FROM dog

删除用户

DROP USER dog CASCADE

以上的这几步操作也只是一个基本参考而已。





oracle

2020.11.18 20:48

https://www.meihaocloud.com.com/239.html , 欢迎转载,请在文章页标出原文连接 !


Copyright © 2020 千夕网 联系站长

粤公网安备 44030302001408号 粤ICP备19099833号-1