oracle用户权限管理

1.每个用户有一个默认的表空间和一个临时表空间
   创建用户:
    CREATE USER username
    IDENTIFIED BY password
    DEFAULT TABLESPACE tablespace
    TEMPORARY TABLESPACE tablespace;
2.当创建用户的时候,如果没有指定profile,oracle把名字为default的profile赋予给用户
    创建profile:
    CREATE PROFILE profile limit failed_login_attempts 3 password_lock_time 2;
    登录失败最大次数3,账号锁定两天
    CREATE USER user1 IDENTIFIED BY password PROFILE profile1;创建时指定profile
    ALTER USER user1 PROFILE profile1;修改用户的profile
    DROP PROFILE profile1 CASCADE;  删除profile1  用户profile重新变成默认profile;
    SELECT * FROM dba_profiles;
Unlimited:分配该profile的用户对资源使用无限制,当使用密码参数时,unlimited意味着没有对参数加限制。
Default:指定为default意味着忽略对profile中的一些资源限制,Default profile初始定义对资源不限制,可以通过alter profile命令来改变。

参数详解
       Resource_parameter部分:
 Session_per_user:指定限制用户的并发会话的数目。
 Cpu_per_session:指定会话的CPU时间限制,单位为百分之一秒。
 Cpu_per_call:指定一次调用(解析、执行和提取)的CPU时间限制,单位为百分之一秒。
 Connect_time:指定会话的总的连接时间,以分钟为单位。
 Idle_time:指定会话允许连续不活动的总的时间,以分钟为单位,超过该时间,会话将断开。
 Logical_reads_per_session:指定一个会话允许读的数据块的数目,包括从内存和磁盘读的所有数据块。
 Logical_read_per_call:指定一次执行SQL(解析、执行和提取)调用所允许读的数据块的最大数目。
 Private_sga:指定一个会话可以在共享池(SGA)中所允许分配的最大空间,以字节为单位。
 Composite_limit:指定一个会话的总的资源消耗,以service units单位表示。Oracle数据库以有利的方式计算cpu_per_session,connect_time,logical_reads_per_session和private-sga总的service units

Password_parameter部分:
 Failed_login_attempts:指定在帐户被锁定之前所允许尝试登陆的的最大次数。
 Password_life_time:指定同一密码所允许使用的天数。
 Password_reuse_time和password_reuse_max:这两个参数必须互相关联设置,password_reuse_time指定了密码不能重用前的天数,而password_reuse_max则指定了当前密码被重用之前密码改变的次数。两个参数都必须被设置为整数。
 Password_lock_time:指定登陆尝试失败次数到达后帐户的锁定时间,以天为单位。
 Password_grace_time:指定宽限天数,数据库发出警告到登陆失效前的天数。如果数据库密码在这中间没有被修改,则过期会失效。
 Password_verify_function:该字段允许将复杂的PL/SQL密码验证脚本做为参数传递到create profile语句。Oracle数据库提供了一个默认意味着不使用密码验证功能。如果为密码参数指定表达式,则该表达式可以是任意格式,除了数据库 量子查询。
3.解除用户锁定
    ALTER USER user1 ACCOUNT UNLOCK;
4.权限有两种类型,系统权限和对象权限。
    系统权限允许用户执行某些数据库操作,如创建表等。
    对象权限允许用户对数据库对象(如表、视图、序列等)执行特定操作。
5.系统权限
        授予权限:
       GRANT privilege[,privilege1,privilege2] TO USER user[,user2|role,PUBLIC...]
        收回权限
        REVOKE privilege FROM user1;
    权限如下
      alter any cluster 修改任意簇的权限
  alter any index 修改任意索引的权限
  alter any role 修改任意角色的权限
  alter any sequence 修改任意序列的权限
  alter any snapshot 修改任意快照的权限
  alter any table 修改任意表的权限
  alter any trigger 修改任意触发器的权限

  alter cluster 修改拥有簇的权限
  alter database 修改数据库的权限
  alter procedure 修改拥有的存储过程权限
  alter profile 修改资源限制简表的权限
  alter resource cost 设置佳话资源开销的权限
  alter rollback segment 修改回滚段的权限
  alter sequence 修改拥有的序列权限

  alter session 修改数据库会话的权限
  alter sytem 修改数据库服务器设置的权限
  alter table 修改拥有的表权限
  alter tablespace 修改表空间的权限
  alter user 修改用户的权限
  analyze 使用analyze命令分析数据库中任意的表、索引和簇
  audit any 为任意的数据库对象设置审计选项
  audit system 允许系统操作审计
  backup any table 备份任意表的权限
  become user 切换用户状态的权限

  commit any table 提交表的权限
  create any cluster 为任意用户创建簇的权限
  create any index 为任意用户创建索引的权限
  create any procedure 为任意用户创建存储过程的权限
  create any sequence 为任意用户创建序列的权限
  create any snapshot 为任意用户创建快照的权限
  create any synonym 为任意用户创建同义名的权限
  create any table 为任意用户创建表的权限
  create any trigger 为任意用户创建触发器的权限
  create any view 为任意用户创建视图的权限
  create cluster 为用户创建簇的权限
  create database link 为用户创建的权限
  create procedure  为用户创建存储过程的权限
  create profile 创建资源限制简表的权限
  create public database link 创建公共数据库链路的权限
  create public synonym 创建公共同义名的权限
  create role 创建角色的权限

  create rollback segment 创建回滚段的权限
  create session 创建会话的权限
  create sequence 为用户创建序列的权限
  create snapshot 为用户创建快照的权限
  create synonym 为用户创建同义名的权限
  create table 为用户创建表的权限
  create tablespace 创建表空间的权限

  create user 创建用户的权限
  create view 为用户创建视图的权限
  delete any table 删除任意表行的权限
  delete any view 删除任意视图行的权限
  delete snapshot 删除快照中行的权限

  delete table 为用户删除表行的权限
  delete view 为用户删除视图行的权限
  drop any cluster 删除任意簇的权限
  drop any index 删除任意索引的权限
  drop any procedure 删除任意存储过程的权限
  drop any role 删除任意角色的权限
  drop any sequence 删除任意序列的权限

  drop any snapshot 删除任意快照的权限
  drop any synonym 删除任意同义名的权限
  drop any table 删除任意表的权限
  drop any trigger 删除任意触发器的权限
  drop any view 删除任意视图的权限
  drop profile 删除资源限制简表的权限
  drop public cluster 删除公共簇的权限

  drop public database link 删除公共数据链路的权限
  drop public synonym 删除公共同义名的权限

  drop rollback segment 删除回滚段的权限
  drop tablespace 删除表空间的权限
  drop user 删除用户的权限
  execute any procedure 执行任意存储过程的权限
  execute function 执行存储函数的权限
  execute package 执行存储包的权限
  execute procedure 执行用户存储过程的权限

  force any transaction 管理未提交的任意事务的输出权限
  force transaction 管理未提交的用户事务的输出权限
  grant any privilege 授予任意系统特权的权限
  grant any role 授予任意角色的权限
  index table 给表加索引的权限
  insert any table 向任意表中插入行的权限

  insert snapshot 向快照中插入行的权限
  insert table 向用户表中插入行的权限
  insert view 向用户视图中插行的权限
  lock any table 给任意表加锁的权限
  manager tablespace 管理(备份可用性)表空间的权限
  references table 参考表的权限
  restricted session 创建有限制的数据库会话的权限
  select any sequence 使用任意序列的权限
  select any table 使用任意表的权限
  select snapshot 使用快照的权限
  select sequence 使用用户序列的权限

  select table 使用用户表的权限
  select view 使用视图的权限
  unlimited tablespace 对表空间大小不加限制的权限
  update any table 修改任意表中行的权限
  update snapshot 修改快照中行的权限

  update table 修改用户表中的行的权限
  update view 修改视图中行的权限
6.对象权限
    创建权限:
    GRANT object_privilege [(columns,columns1)]
    ON object TO user[,user2|role,PUBLIC]
    [WITH GRANT OPTION];
    收回权限:
    REVOKE privilege ON object FROM {user|role|PUBLIC};
    eg.
    GRANT SELECT ON SCOTT.EMP TO wen;
    GRANT ALL ON SCOTT.EMP TO wang; 允许用户插入、删除、更新和查询EMP表中的记录。
    GRANT update(ename,sal) ON SCOTT.EMP TO wen;
7.角色管理
    角色是一组相关权限的组合,可以授权角色,再把角色授予用户,以简化权限管理。
    (1)创建角色CREATE ROLE ,应该具有CREATE ROLE 系统权限
    CREATE ROLE role_name;
    授予角色权限,可以是系统权限或者对象权限。
    (2)授予角色权限,可以是系统权限或者对象权限。
    GRANT privilege TO ROLE;
      (3) 将角色授予用户
    GRANT role TO user;
       (4)从用户回收角色
    REVOKE role FROM user;




来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/20815129/viewspace-2135998/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/20815129/viewspace-2135998/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值