Oracle用户和权限

来源:互联网 发布:管家婆软件怎么样 编辑:程序博客网 时间:2024/06/05 19:04

oracle里面的权限分为系统权限和对象权限

系统权限:对于数据库的权限(通过SELECT * FROM SYSTEM_PRIVILEGE_MAP可以查出)
系统权限分类

群集权限         数据库权限     索引权限

过程权限          概要文件权限  角色权限

回退权限         序列权限          会话权限

同义词权限     权限            表空间权限

用户权限         视图权限         触发器权限

管理权限          其它权限

对象权限: 操作数据库对象的权限


角色: 

角色是一组权限的集合,将角色赋给一个用户,这个用户就拥有了这个角色中的所有权限。

oracle里面常用的几个角色介绍:

DBA: 拥有全部特权,是系统最高权限,

       只有DBA才可以创建数据库结构。

RESOURCE:拥有Resource权限的用户只可以创建实体,

                    不可以创建数据库结构。

CONNECT:拥有Connect权限的用户只可以登录Oracle

不可以创建实体,不可以创建数据库结构。

对于普通用户:授予connect, resource权限。
对于
DBA管理用户:授予connectresource,dba权限。

========================================================

oracle里的用户:

   可以通过字典表all_users,dba_users查出所有的用户。也可以创建用户,当然需要用超级用户登录,如system。

1.创建用户

  语法如下所示:

  

 eg. create jack identified by test123;  --创建一个jack用户,密码是test123。

用户创建之后,需要给它复权,否则该用户无法登录,当然更无法进行任何操作。

2. 给用户复权

  赋权语法如下所示:

  

 当然也可以把角色赋给用户,应为角色里面就包含了很多权限

 例如对于开发者用户jack,可以如下赋权:

    grant connect,resource to jack;


用户和权限的其它一些常用操作

eg: --系统自带了一些用户默认是锁定的,这里可以一并解锁和修改密码
alter user jack account unlock identified by test123;

eg:  --查看用户拥有的角色权限

select * from ROLE_SYS_PRIVS;

eg:--查看用户拥有的对象权限

select * from ROLE_TAB_PRIVS;

eg: --查看用户拥有的系统权限

select * from USER_SYS_PRIVS

eg: --回收权限

revoke connect, resource from jack;

eg:  --删除用户及其所有对象

drop user  jack  CASCADE; 

eg:--切换用户登录

conn mytest/test123

eg:  --对所有用户赋权
grant  insert on users to public 



原创粉丝点击