用户管理Oracle数据库的用户创建、删除等;用户、角色权限的授予与回收等;用户的信息查询及权限与角色的信息查询。

(1)Oracle中创建新的用户使用create user语句,一般是具有dba(数据库管理员)的权限才能使用。

如在sql plus中以scott用户创建用户的命令如下:

Create user xiaoming identified by m123;(注意oracle中的密码是以字母为开头,否则不让你创建)。

(2)删除用户,命令格式为: drop user 用户名 [cascade]

一般以dba的身份去删除某个用户。在删除用户时,注意:如果要删除的用户已经创建了表,那么就需要在删除时带一个参数cascade;这个参数表示删除用户时会将该用户创建的表也删除。

综合任务(用户管理基础练习,必做题):

1、 在scott用户下创建xiaoming用户密码m123,结果如何,

提示:切换到 system用户创建

语法:create user 用户名 identified by 密码

Create user xiaoming identified by m123;

 

2、 让xiaoming具有登录数据库的权限,并登录数据库;

提示:授予connect角色,grant 权限 to 用户或角色

Grant connect to xiaoming;

Conn xiaoming

 

3、先切换到system用户,对xiaoming用户授予resource角色并查看resource角色的系统权限信息;

提示:此操作是为xiaoming用户增加创建表的权限,系统权限信息查询视图为role_sys_privs,可以用desc命令查询视图结构信息

Grant resource to xiaoming;

Conn xiaoming

Desc role_sys_privs

Desc role_tab_privs

 

4、切换到xiaoming用户,创建test表,test表包含一个字段userid,类型为varchar2,10个字符大小,并查看test表;

  Conn xiaoming

create table test(userid varchar2(10));

desc test;

 

5、让xiaoming用户可以去查询scott用户的emp表并具有传递授权的权限;

提示:加上with grant option 表示允许对象权限接收者把此对象权限授予其他用户

Conn scott

Grant  select  on scott.emp to xiaoming with grant option.

 

6、让xiaoming能修改scott的emp表

提示:

Grant update on scott.emp to xiaoming

 

7、以系统管理员的身份创建用户xiaohong,密码为m123;先让xiaohong能够登录到数据库,切换到xiaoming用户,再将对scott的emp表的select权限授予xiaohong。

Conn sys as sysdba

Create user xiaohong identified by m123;

Grant connect to xiaohong;

Conn xiaoming

Grant select on scott.emp to xiaohong

Conn xiaohong

Select * from scott.emp;

 

8、Scott希望收回xiaoming对emp表的修改权限

提示:revoke 权限 from 用户或角色

Conn scott

Revoke update on scott.emp from xiaoming;

 

9、如何创建角色

任务:创建一个普通角色r1,创建一个口令认证角色r2,口令为wy

提示:create role 角色名

      Create role 角色名identified by 口令

 

10、如何把权限授予角色

任务:可以把创建表的系统权限授予角色r1,把test表的插入数据权限授予r1

提示:grant 系统权限 to 角色名

      Grant  对象权限  on 对象名 to 角色名

      Grant insert on  xiaoming.test  to  r1

 

11、如何把一个角色授权给用户

任务:请把创建的角色r1授权给xiaoming

提示:grant 角色 to 用户

 

 

12、如何查询一个角色有哪些系统权限

任务:列出角色r1有哪些系统权限

提示:查询表role_sys_privs

Conn xiaoming

Select * from role_sys_privs;

 

13、如何查询一个角色有哪些对象权限

任务:列出角色r1有哪些对象权限

提示:查询表role_tab_privs

Conn xiaoming

Select * from role_tab_privs;

 

 

你可能感兴趣的:(用户管理Oracle数据库的用户创建、删除等;用户、角色权限的授予与回收等;用户的信息查询及权限与角色的信息查询。)