欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Oracle用户配置文件概述

程序员文章站 2022-05-26 20:08:20
...

07_DICTIONARY_ACCESSIBILITY:this instance parameter controls the effect of granting object privileges with the ANY keywo

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;