博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Oracle用户profile详解
阅读量:5995 次
发布时间:2019-06-20

本文共 4796 字,大约阅读时间需要 15 分钟。

一、profile功能

      oracle系统中的profile是用来对用户所能使用的数据库资源进行限制的。
   
    二、profile参数详解     
             (1)查看数据库资源限制参数
               SQL> select * from dba_profiles;

PROFILE                        RESOURCE_NAME                    RESOURCE LIMIT

------------------------------ -------------------------------- -------- --------------------

DEFAULT                        COMPOSITE_LIMIT                  KERNEL   UNLIMITED

DEFAULT                        SESSIONS_PER_USER                KERNEL   UNLIMITED

DEFAULT                        CPU_PER_SESSION                  KERNEL   UNLIMITED

DEFAULT                        CPU_PER_CALL                     KERNEL   UNLIMITED

DEFAULT                        LOGICAL_READS_PER_SESSION        KERNEL   UNLIMITED

DEFAULT                        LOGICAL_READS_PER_CALL           KERNEL   UNLIMITED

DEFAULT                        IDLE_TIME                        KERNEL   UNLIMITED

DEFAULT                        CONNECT_TIME                     KERNEL   UNLIMITED

DEFAULT                        PRIVATE_SGA                      KERNEL   UNLIMITED

DEFAULT                        FAILED_LOGIN_ATTEMPTS            PASSWORD 10

DEFAULT                        PASSWORD_LIFE_TIME               PASSWORD UNLIMITED

DEFAULT                        PASSWORD_REUSE_TIME              PASSWORD UNLIMITED

DEFAULT                        PASSWORD_REUSE_MAX               PASSWORD UNLIMITED

DEFAULT                        PASSWORD_VERIFY_FUNCTION         PASSWORD NULL

DEFAULT                        PASSWORD_LOCK_TIME               PASSWORD UNLIMITED

DEFAULT                        PASSWORD_GRACE_TIME              PASSWORD UNLIMITED

MONITORING_PROFILE             COMPOSITE_LIMIT                  KERNEL   DEFAULT

MONITORING_PROFILE             SESSIONS_PER_USER                KERNEL   DEFAULT

MONITORING_PROFILE             CPU_PER_SESSION                  KERNEL   DEFAULT

MONITORING_PROFILE             CPU_PER_CALL                     KERNEL   DEFAULT

MONITORING_PROFILE             LOGICAL_READS_PER_SESSION        KERNEL   DEFAULT

MONITORING_PROFILE             LOGICAL_READS_PER_CALL           KERNEL   DEFAULT

MONITORING_PROFILE             IDLE_TIME                        KERNEL   DEFAULT

MONITORING_PROFILE             CONNECT_TIME                     KERNEL   DEFAULT

MONITORING_PROFILE             PRIVATE_SGA                      KERNEL   DEFAULT

MONITORING_PROFILE             FAILED_LOGIN_ATTEMPTS            PASSWORD UNLIMITED

MONITORING_PROFILE             PASSWORD_LIFE_TIME               PASSWORD DEFAULT

MONITORING_PROFILE             PASSWORD_REUSE_TIME              PASSWORD DEFAULT

MONITORING_PROFILE             PASSWORD_REUSE_MAX               PASSWORD DEFAULT

MONITORING_PROFILE             PASSWORD_VERIFY_FUNCTION         PASSWORD DEFAULT

MONITORING_PROFILE             PASSWORD_LOCK_TIME               PASSWORD DEFAULT

MONITORING_PROFILE             PASSWORD_GRACE_TIME              PASSWORD DEFAULT

32 rows selected.

Unlimited:分配该
profile
的用户对资源使用无限制,当使用密码参数时,unlimited意味着没有对参数加限制。
Default
:指定为default意味着忽略对
profile
中的一些资源限制,Default 
profile
初始定义对资源不限制,可以通过alter 
profile
命令来改变。
     (2)参数详解
       Resource_parameter
部分:
 Session_per_user:指定限制用户的并发会话的数目。
 Cpu_per_session:指定会话的CPU时间限制,单位为百分之一秒。
 Cpu_per_call:指定一次调用(解析、执行和提取)的CPU时间限制,单位为百分之一秒。
 Connect_time:指定会话的总的连接时间,以分钟为单位。
 
Idle_time
:指定会话允许连续不活动的总的时间,以分钟为单位,超过该时间,会话将断开。
 Logical_reads_per_session:指定一个会话允许读的数据块的数目,包括从内存和磁盘读的所有数据块。
 Logical_read_per_call:指定一次执行SQL(解析、执行和提取)调用所允许读的数据块的最大数目。
 Private_sga:指定一个会话可以在共享池(SGA)中所允许分配的最大空间,以字节为单位。
 Composite_limit:指定一个会话的总的资源消耗,以service units单位表示。Oracle数据库以有利的方式计算cpu_per_session,                                                 connect_time,logical_reads_per_session和private-sga总的service units
Password_parameter部分:
 Failed_login_attempts
:指定在帐户被锁定之前所允许尝试登陆的的最大次数。
 Password_life_time:指定同一密码所允许使用的天数。
 Password_reuse_time
和password_reuse_max:这两个参数必须互相关联设置,password_reuse_time指定了密码不能重用前的天                                                                             数,而password_reuse_max则指定了当前密码被重用之前密码改变的次数。两个参                                                                           数都必须被设置为整数。
 Password_lock_time:指定登陆尝试失败次数到达后帐户的锁定时间,以天为单位。
 Password_grace_time:指定宽限天数,数据库发出警告到登陆失效前的天数。如果数据库密码在这中间没有被修改,则过期会失效。
 Password_verify_function:该字段允许将复杂的PL/SQL密码验证脚本做为参数传递到create profile语句。Oracle数据库提供了一个默认                                               的脚本,但是自己可以创建自己的验证规则或使用第三方软件验证。 对Function名称,指定的是密码验证规                                               则的名称, 指定为Null则意味着不使用密码验证功能。如果为密码参数指定表达式,则该表达式可以是任意                                                 格式,除了数据库 量子查询。
    三、使用profile    
         (1)创建profile,命令如下:
CREATE PROFILE profile  profile_name
LIMIT { resource_parameters
         | password_parameters
         }
           [ resource_parameters
           | password_parameters
           ]... ;
 
 
         (2) profile分配给用户,命令如下:
             alter  user  user_name  profile  profile_name;
    四、举例
     
          (1)创建一个用户u1
       SQL> show user;
                USER is "SYS"
       SQL> create user u1 identified by u1;
                 User created.
       SQL> grant create session to u1;
                
Grant succeeded.
          (2)创建profile为p1用来限制用户尝试登陆失败2次后会被锁定
                 SQL> create profile p1 limit FAILED_LOGIN_ATTEMPTS 2;
                           
Profile created.
         (3)把创建的p1分配给u1
                SQL> alter user u1 profile p1;
                     User altered.
         (4)尝试验证
          SQL> select USERNAME,ACCOUNT_STATUS,LOCK_DATE,PROFILE from dba_users where username='U1';
                    USERNAME   ACCOUNT_STATUS    LOCK_DATE    PROFILE
                   ---------- -------------------------------- --------- ------------------------------  //看u1用户的状态没有被锁
                         U1                     OPEN                     P1
         SQL> conn u1/a1;
                    ERROR:
                    ORA-01017: invalid username/password; logon denied
                    Warning: You are no longer connected to ORACLE.
                                                                                                                 //尝试两次失败登陆
         SQL> conn u1/a1;
                    ERROR:
                     ORA-01017: invalid username/password; logon denied
        SQL> select USERNAME,ACCOUNT_STATUS,LOCK_DATE,PROFILE from dba_users where USERNAME='U1';
                 USERNAME        ACCOUNT_STATUS    LOCK_DATE     PROFILE
                 --------------- ------------------------------ -----------  ------------------- //查看U1用的状态,已经被锁
                      U1              LOCKED(TIMED)        05-MAR-14             P1
      SQL> conn u1/u1;
                ERROR:                                                           
 //在被锁之后,使用正确的密码也不能再登陆
                ORA-28000: the account is locked                                                    
                 Warning: You are no longer connected to ORACLE.
        (5)解决办法:第一种可以等
Password_lock_time参数设定的天数过了之后自动解锁,第二种需要管理员帮助,为用户解锁,在此选择第二种方法                                求职管理员。
             
              SQL> show user;
                        USER is "SYS"
                SQL>
alter user u1 account unlock identified by u1;          //用户解锁时可以使用之前的密码
                           User altered.
               SQL> conn u1/u1;
                          Connected.
                SQL> show user;
                          USER is "U1"                       //u1用户成功登陆

转载地址:http://qahlx.baihongyu.com/

你可能感兴趣的文章
关于上一个sql优化测试的部分知识
查看>>
WCF服务编程-非WCF应用程序使用WCF服务
查看>>
Word邮件合并-IT男必备技能
查看>>
通过UIImage显示网络图片
查看>>
网络流题目集锦(转)
查看>>
POJ 1080 Human Gene Functions
查看>>
存储过程中基本的增删改查操作
查看>>
android使用webview上传文件(支持相册和拍照)
查看>>
js 动态切换视频
查看>>
[置顶] 正则表达式应用:匹配email地址
查看>>
[LintCode] Coins in a Line II
查看>>
关于ASP.Net的导入导出的[转]
查看>>
gis开源开发资料(持续更新)
查看>>
进销存设计之——进销存业务的整体设计思路
查看>>
[Windows Azure] Data Management and Business Analytics
查看>>
IOS 7 Study - Manipulating a Navigation Controller’s Array of View
查看>>
2014年GCT考试报名时
查看>>
用户管理 之 用户(User)和用户组(Group)配置文件详解
查看>>
intrawebIW当作REST 服务端
查看>>
划重点!新版电子病历评级标准讲解会上6大核心要点
查看>>