用户权限的管理(对象权限)
例子: scott 把权限给了小明,现在小明有把权限给了别人。
就是在授权的时候再后面加上:with grant option;
Grant select on emp to xiaoming with grant option; //给定小明权限转发给下一个人。可以转发的权限。
这样的话:小明就有了转发的权限;然后就可以直接使用。
grant select on scott.emp to huang with grant option;
(系统权限)系统管理员给权限,并传递
grant connect to huang with admin option;
撤销权限
oracle 权限连带作用,取消一个的权限就会他的下一级就会失去权限。
要从新使用的话就要从新授权,每个用户都授权。
使用profile管理用户口令
Profile 是口令限制和资源限制的集合。
用户在创建数据库的时候,oracle会自动给建立一个 default的profile文件,当用户没有指定使用哪个profile的时候,就会使用default profile文件。
1. 账户锁定
指定用户登陆是输入密码的最大次数,锁定用户的时间。这些功能基本都是dba给定设置的。
例子:
指定一个用户的登陆最大的次数是2次,锁定时间为2天。
a. 创建一个profile文件,就是一个规则。然后赋给他就可以。
Create profile aa limit failed_login_attempts 3 password_lock_time 2;
给定用户限定权限
Alter user xiaoming profile aa ;
b. 撤销权限解锁
Alter user xiaoming account unlock;
c. 终止口令
为了给用户设置定期修改密码,使用终止命令来完成,需要DBA身份来完成。
例子:给定一个用户profile文件,要求用户10天修改自己以前的密码,宽限期是2天时间。
Create profile aa limit password_life_time 10 password_grace_time 2;
Alter user xiaoming profile aa;
d. 口令历史
如果要求用户修改密码,并且不能用过去已经用过的密码,必须输入一个和上次不一样的密码。Oracle会把用户每次输入的密码存入数据字典中,当有新密码的时候都会和以前的密码对照,如果一样就会提示用户重新输入。
Create profile aa limit password_life_time 10 password_grace_time 2 password_reuse_time 18;\\18天就可以重新使用密码。
e. 删除profile文件
Drop profile aa (cascade);\\级联的用户都会删除。
例子:
指定一个用户的登陆最大的次数是2次,锁定时间为2天。
f. 创建一个profile文件,就是一个规则。然后赋给他就可以。
Create profile aa limit failed_login_attempts 2 password_lock_time 2;
给定用户限定权限
Alter user xiaoming profile aa ;
g. 撤销权限解锁
Alter user xiaoming account unlock;
如果要求用户修改密码,并且不能用过去已经用过的密码,必须输入一个和上次不一样的密码。Oracle会把用户每次输入的密码存入数据字典中,当有新密码的时候都会和以前的密码对照,如果一样就会提示用户重新输入。
Create profile aa limit password_life_time 10 password_grace_time 2 password_reuse_time 18;\\18天就可以重新使用密码。