1 profile概览
对数据库资源使用和实例资源施加了一组指定的资源限制。配置文件还管理帐户状态并对用户的密码(长度、过期时间等)进行限制。每个用户都被分配了一个配置文件,并且在任何时候都可能只属于一个配置文件。如果在更改用户的配置文件时,用户已经登录,那么用户下次登录时才会生效。
默认配置文件作为所有其他配置文件的基础。概要文件的限制可以隐式指定(如在CPU/Session中),可以是无限制的(如在CPU/Call中),或者可以引用默认概要文件中的任何设置(如在Connect Time中)。
2 资源限制
除非初始化参数RESOURCE_LIMIT被设置为TRUE,否则概要文件不能对用户施加资源限制。当RESOURCE_LIMIT的默认值为FALSE时,概要文件资源限制将被忽略。配置文件密码设置总是强制执行。
配置文件使管理员能够控制以下系统资源:
CPU: CPU资源可能在每个会话或每个调用的基础上受到限制。
对每次调用的限制也会起到同样的作用,但它不会限制用户的整个会话,而是防止任何单个命令消耗过多的CPU。如果CPU/调用是有限的,而用户超过了限制,命令中止。用户会收到如下错误信息:
ORA-02393: CPU使用超过调用限制
网络/内存:每个数据库会话消耗系统内存资源和网络资源(如果会话来自非服务器本地的用户)。您可以指定以下内容:
连接时间:表示用户在自动注销之前可以连接的时间
空闲时间:表示用户的会话在被自动注销之前可以保持空闲的时间。空闲时间仅为服务器进程计算。它不考虑应用程序的活动。
并发会话:指示使用数据库用户帐户可以创建多少并发会话
私有SGA:限制系统全局区域(SGA)中用于排序、 merging bitmaps等的空间消耗。此限制仅在会话使用共享服务器时生效。
磁盘I/O:这限制了用户在每个会话级别或每个调用级别上可以读取的数据量。读取/会话和读取/调用对从内存和磁盘读取的总数都有限制。这样做可以确保没有I/ o密集型语句过度使用内存和磁盘。
配置文件还允许混合限制。混合限制基于CPU/会话、读取/会话、连接时间和私有SGA的加权组合。
3 密码管理
Oracle密码管理是通过用户配置文件实现的。
:当用户在指定的尝试次数中登录系统失败时,允许在设定的持续时间内自动锁定帐户
FAILED_LOGIN_ATTEMPTS:指定锁定帐户之前失败次数
PASSWORD_LOCK_TIME:指定在指定失败的次数后锁定帐户的天数
密码老化和过期:允许用户密码有一个生存期,在此之后,密码过期并必须更改
PASSWORD_LIFE_TIME:确定密码的生命周期(以天为单位),在此之后,密码将过期
PASSWORD_GRACE_TIME:指定在密码过期后第一次成功登录后修改密码的宽限期(以天为单位)
注意:过期的密码和锁定SYS、SYSMAN和DBSNMP帐户会使企业管理器无法正常工作。应用程序必须捕捉“密码过期”警告信息并处理密码更改;否则,宽限期到期,用户被锁定。
PASSWORD_REUSE_TIME:指定用户在给定的天数内不能重用密码
PASSWORD_REUSE_MAX:指定在重用当前密码之前需要修改的密码数量
如果这两个密码历史参数的值都为UNLIMITED, Oracle Database将同时忽略这两个参数。用户可以在任何时候重用任何密码,这不是一个好的安全实践。
如果设置了这两个参数,则允许密码重用——但必须满足这两个条件。用户必须将密码更改了指定的次数,并且自上次使用旧密码以来已经过了指定的天数。
例如,用户ALFRED的配置文件将PASSWORD_REUSE_MAX设置为10,PASSWORD_REUSE_TIME设置为30。用户ALFRED必须将密码重设10次,并且距离上次使用该密码已经过去30天,否则他不能再使用该密码。
如果一个参数设置为数字,而另一个参数指定为无限制,则用户永远不能重用密码。
密码复杂性验证:对密码进行复杂性检查,以验证它是否符合某些规则。检查必须确保密码足够复杂,以防止入侵者试图通过猜测密码闯入系统。
PASSWORD_VERIFY_FUNCTION参数指定了一个PL/SQL函数,该函数在分配密码之前执行密码复杂性检查。密码验证函数必须为SYS用户所有,并且必须返回一个布尔值(真或假)。utlpwdmg.sql中提供了模型密码验证功能。sql脚本发现在以下目录:
UNIX和Linux平台:ORACLE_HOME/rdbms/admin
Windows平台:% ORACLE_HOME % \ rdbms \ admin
在Enterprise Manager中,不能删除用户使用的配置文件。但是,如果删除带有CASCADE选项的配置文件(例如,在SQL*Plus中),那么拥有该配置文件的所有用户都会自动被分配默认配置文件。
以下函数是由ORACLE_HOME/rdbms/admin/utlpwdmg.sql创建的。sql脚本:
VERIFY_FUNCTION_11G
ORA12C_VERIFY_FUNCTION
ORA12C_STRONG_VERIFY_FUNCTION
这些功能需要以下密码:
Have a minimum number of characters
Not be the username, username with a number, or username reversed
Not be the database name or the database name with a number
Have at least one alphabetic and one numeric character
Differ from the previous password by at least three letters
4 练习题
如下哪两个选项正确?
数据库中的角色
A Can be enabled or disabled
B Can consist of system and object privileges
C Is owned by its creator
D Cannot be protected by a password
判断题
默认情况下,RESOURCE_LIMIT为false值,口令管理也被忽略。
A True
B False
评论
