概要文件用于限制由用户使用的系统和数据库资源,并可以对口令进行管理。如果在创建用户时没有指定概要文件,
将使用默认的概要文件。
1、使用create profile命令创建概要文件
语法格式如下:
create profile profile_name limit
resource_parameters | password_parameters;
其中,resource_parameters用来指定资源限制的参数,password_parameters用来指定口令参数。
(1)resource_parameters的语法格式如下:
Sql代码 [sessions_per_user integer | unlimited | default] --限制一个用户并发会话个数*/
[cpu_per_session integer | unlimited | default] --限制一次会话的cpu时间,以s/100为单位*/
[cpu_per_call integer | unlimited | default] --限制一次调用的cpu时间*/
[connect_time integer | unlimited | default] --限制一次会话持续的时间,以min为单位*/
[idle_time integer | unlimited | default] --限制一次会话的连续不活动时间,以min为单位*/
[logical_reads_per_session integer | unlimited | default] --规定一次会话中读取数据块的数目,包括从内存和磁盘中读取的块数*/
[logical_reads_per_call integer | unlimited | default] --规定处理一个SQL语句一次调用所读的数据块的数目*/
[composite_limit integer | unlimited | default] --规定一次会话的资源开销,以服务单位表示该参数值*/
[private_sga integer {K|M} | unlimited | default ] --规定一次会话在系统全局区的共享池可分配的私有空间的数目*/
(2)password_parameters的语法格式如下:
Sql代码 [failed_login_attempts expression | unlimited | default] --在锁定账户前允许登录失败的次数,默认是10次*/
[password_life_time expression | unlimited | default] --设置口令的有效期,以天为单位,有效期过后将强制修改密码,默认180天*/
[password_reuse_time expression | unlimited | default] --规定口令不被重复使用的天数,默认无限制*/
[password_reuse_max expression | unlimited | default] --规定口令被重新使用前需要更改口令的次数,默认无限制*/
[password_lock_time expression | unlimited | default] --指定由于多次登录失败而锁定账户的天数,默认1天*/
[password_grace_time expression | unlimited | default] --设定口令的过期宽限时间,单位为天,默认7天*/
[password_verify_function functionName | null | default] --使用function来校验口令的复杂度,null表示没有校验*/
示例代码:
Sql代码 create profile myprofile limit
password_login_attempts 5
password_lock_time 5;
alter user hello profile myprofile;
说明:
上述代码建立了一个名为myprofile的概要文件,并把它提供给用户hello使用,该文件指明如果用户hello连续5次登录失败,则用户hello将被锁定5天。
2、使用alter profile命令修改概要文件
语法格式如下:
Sql代码 alter profile profile_name limit
resource_parameters | password_parameters;
示例代码:
修改概要文件myprofile,设定口令过期宽限时间为10天,设定每60天修改一次密码,代码如下:
Sql代码 alter profile myprofile limit
password_grace_time 10
password_life_time 60;
3、使用drop profile命令删除概要文件
语法格式如下:
Sql代码 drop profile profile_name;
例如,删除概要文件myprofile如下:
Sql代码 drop profile myprofile;