口令策略是用来控制用户密码的复杂程度,复杂的密码可用增强数据安全性。由PWD_POLICY参数指定,默认为 2。
系统支持的口令策略有:
口令策略可单独应用,也可组合应用。组合应用时,如需要应用策略 2 和 4,则设置口令策略为 2+4=6 即可。口令策略一般是组合应用。
PWD_POLICY 是隐含参数,可通过函数或 SQL 语句修改。
select * from v$parameter t where t.name = ‘PWD_POLICY’;
修改系统口令策略:
alter SYSTEM set ‘PWD_POLICY’ = 7 BOTH;
因为7是1+2+4得来的,那么现在’PWD_POLICY’ = 7的策略为:
创建用户
create user test IDENTIFIED by Test123456 DEFAULT TABLESPACE TBSTEST;
创建用户最好指定这个用户的默认表空间,这样方便数据管理。
修改用户的默认表空间:
alter user test DEFAULT TABLESPACE TBSTEST01;
修改用户密码:
alter user test IDENTIFIED by “Test123456”;
修改用户的尝试登陆次数,超出次数则用户被锁定。
alter user TEST LIMIT FAILED_LOGIN_ATTEMPS 5, PASSWORD_LOCK_TIME 3;
修改用户密码的有效期,比如30天。
alter user TEST limit PASSWORD_LIFE_TIME 30;
为用户赋权,不然用户无法创建表等对象。
grant create table to test;
grant resource to test;
授予test用户查询任何表的权限。
grant select any table to test;
一般来说,授权应该限定在指定的表对象,比如other用户的test01表。
grant select on other.test01 to test;
角色是权限的集合,角色使权限管理更加方便。
角色的信息可以在dba_roles中查询到。
select * from dba_roles;
创建角色
create role role_test;
为角色赋予权限
grant create table to role_test;
grant select on other.test01 to role_test;
grant role_test to test;
角色禁用和启用。禁用后角色权限将不在生效,之前的授权默认被取消。执行前务必确认好。
sp_set_role(‘ROLE_TEST’,0)
文章
阅读量
获赞