Oracle用户配置文件概述


A profile has dual function: toenforce a password policy and to restrict the resources a session can consume;

密码管理是一直有效的

对资源的管理时当初始化参数RESOURCE_LIMIT为TRUE时才会有效,默认值为false;

密码管理

  • FAILED_LOGIN_ATTEMPTS:在账号被锁之前可以输入错误密码的最大次数;
  • PASSWORK _LOCK_TIME:账号在上步被锁定后,需要锁定是时间
  • PASSWORD_LIFE_TIME:账号需要在多长时间内需要进行修改,还和PASSWORD_GRACE_TIME参数有关
  • PASSWORD_GRACE_TIME:

指定宽限天数,数据库发出警告到登陆失效前的天数。如果数据库密码在这中间没有被修改,则过期会失效。

  • PASSWORD_REUSE_MAX:这个参数和下面一个参数需要同时使用才有作用,需要做试验进行测试;
  • PASSWORD_REUSE_TIME
  • PASSWORD_VERIFY_FUNCTION

资源管理

  • SESSIONS_PER_USER
  • CPU_PER_SESSION
  • CPU_PER_CALL
  • LOGICAL_READS_PER_SESSION
  • LOGICAL_READS_PER_CALL
  • PRIVATE_SGA
  • CONNECT_TIME
  • IDLE_TIME
  • COMPOSITE_LIMIT

建立和分派配置文件

--查看目前正在使用的配置文件

selectusername,profile from dba_users;

默认的配置文件对资源没有任何限制,指示对密码有限制

FAILED_LOGIN_ATTEMPTS  

10

PASSWORD_LOCK_TIME

1

PASSWORD_LIFE_TIME

180

PASSWORD_GRACE_TIME

7

在%Oracle_HOMERDBMS\ADMIN\utlpwdmg.sql%文件中有更加详细的配置文件的建立方法;

一个配置文件一旦被分派给用户,这个配置文件就不能被删除

DROP PROFILE profile_name;

DROPPROFILE profile_name CASCADE;--这个命令可以删除配置文件,并恢复为默认的DEFAULT配置文件;

例:

createprofile two_wrong limit failed_login_attempts 2;

alteruser sj profile two_wrong;

数据库安全准则:

有安全危险的包:

  • UTL_FILE:允许用户去读写操作系统中Oracle用户可以读写的所有文件和目录;
  • UTL_TCP:允许用户打开服务器上的TCP端口
  • UTL_SMTP:
  • UTL_HTTP:

和Oracle安全相关的初始化参数

  • UTL_FILE_DIR:这个参数默认值为null,这时不存在安全问题,但如果设定值后,通过UTL_FILE包就可以访问相关的目录和文件了;
  • REMOTE_OS_AUTHENT AND OS_AUTHENT_PREFIX
  • 07_DICTIONARY_ACCESSIBILITY:this instance parameter controls the effect of granting object privileges with the ANY keyword;如果将这个参数设置为true,那么用户将可以看到数据字典和用户数据;变通的方法是使用SELECT ANY DICTIONARY权限,这个权限可以让用户看到数据字典和动态性能视图,但是他们不能看到用户的数据;
  • REMOTE_LOGIN_PASSWORDFILE:这个参数控制SYSDBA和SYSOPER用户是否可以通过网络远程登录;如果这个参数设置为NONE,那么SYSDBA唯一登录Oracle数据库的方法就是登录Oracle所在的服务器操作系统;
    • SHARED:所有的运行的实例使用一个密码文件
    • EXCLUSIVE:每个实例都寻找自己相对应的密码文件;

如果你用SYSDBA权限登录,不管你输入的是哪个用户名,最终显示的用户为SYS;

如果你用SYSOPER权限登录,不管你输入的是哪个用户名,最终显示的用户为PUBLIC;

相关内容