`
ginaduxuefang
  • 浏览: 90407 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

用ORACLE的PROFILE限制ORACLE用户

阅读更多

      ORACLE的PROFILE文件是限制数据库用户使用的资源的一种手段。如:控制session或sql能使用的CPU、控制用户的密码管理策略等。
       数据库创建后,系统则存在名为DEFAULT的默认PROFILE,若不做特殊指定,创建用户时用户默认使用的PROFILE就是DEFAULT。

 

查看视图dba_profiles可找出数据库中有哪些PROFILE。

SQL> select distinct profile from dba_profiles;
PROFILE
--------------------
MONITORING_PROFILE
DEFAULT

 查看所有的PROFILE

SQL> select * from dba_profiles order by PROFILE;
PROFILE              RESOURCE_NAME                  RESOURCE LIMIT
-------------------- ------------------------------ -------- ----------
DEFAULT              COMPOSITE_LIMIT                KERNEL   UNLIMITED
DEFAULT              PASSWORD_LOCK_TIME             PASSWORD 1
DEFAULT              PASSWORD_VERIFY_FUNCTION       PASSWORD NULL
DEFAULT              PASSWORD_REUSE_MAX             PASSWORD UNLIMITED
DEFAULT              PASSWORD_REUSE_TIME            PASSWORD UNLIMITED
DEFAULT              PASSWORD_LIFE_TIME             PASSWORD 180
DEFAULT              FAILED_LOGIN_ATTEMPTS          PASSWORD UNLIMITED
DEFAULT              PRIVATE_SGA                    KERNEL   UNLIMITED
DEFAULT              CONNECT_TIME                   KERNEL   UNLIMITED
DEFAULT              IDLE_TIME                      KERNEL   UNLIMITED
DEFAULT              LOGICAL_READS_PER_CALL         KERNEL   UNLIMITED
DEFAULT              LOGICAL_READS_PER_SESSION      KERNEL   UNLIMITED
DEFAULT              CPU_PER_CALL                   KERNEL   UNLIMITED
DEFAULT              CPU_PER_SESSION                KERNEL   UNLIMITED
DEFAULT              SESSIONS_PER_USER              KERNEL   UNLIMITED
DEFAULT              PASSWORD_GRACE_TIME            PASSWORD 7

 参数解释
1、对数据库资源做限制
{ { SESSIONS_PER_USER 每个用户名所允许的并行会话数
  | CPU_PER_SESSION   一个会话一共可以使用的CPU时间,单位是百分之一秒
  | CPU_PER_CALL      一次SQL调用(解析、执行和获取)允许使用的CPU时间
  | CONNECT_TIME      限制会话连接时间,单位是分钟
  | IDLE_TIME         允许空闲会话的时间,单位是分钟
  | LOGICAL_READS_PER_SESSION 限制会话对数据块的读取,单位是块
  | LOGICAL_READS_PER_CALL    限制SQL调用对数据块的读取,单位是块
  | COMPOSITE_LIMIT   “组合打法”
  }   { integer | UNLIMITED | DEFAULT }
  | PRIVATE_SGA   限制会话在SGA中Shared Pool中私有空间的分配  { size_clause | UNLIMITED | DEFAULT}
}
2、对密码做限制
{ { FAILED_LOGIN_ATTEMPTS 帐户被锁定之前可以错误尝试的次数
  | PASSWORD_LIFE_TIME    密码可以被使用的天数,单位是天,默认值180天
  | PASSWORD_REUSE_TIME   密码可重用的间隔时间(结合PASSWORD_REUSE_MAX)
  | PASSWORD_REUSE_MAX    密码的最大改变次数(结合PASSWORD_REUSE_TIME)
  | PASSWORD_LOCK_TIME    超过错误尝试次数后,用户被锁定的天数,默认1天
  | PASSWORD_GRACE_TIME   当密码过期之后还有多少天可以使用原密码
  }  { expr | UNLIMITED | DEFAULT }
  | PASSWORD_VERIFY_FUNCTION  { function | NULL | DEFAULT }
}

修改profile:alter profile [资源文件名] limit [资源名] unlimited;
如:

alter profile default limit failed_login_attempts 100;

 删除PROFILE:drop profile [资源文件名] [CASCADE] ;
若创建的PROFILE已经授权给了某个用户,使用CASCADE级联收回相应的限制,收回限制信息后将以系统默认的PROFILE对该用户进行限制。

设置PROFILE参数的生效时间
1、用户所有拥有的PROFILE中有关密码的限制立即生效,不受限制。从这个可看出Oracle对用户密码的重视程度。
2、用户所有拥有的PROFILE中有关资源的限制与resource_limit参数的设置有关,当为TRUE时生效,当为FALSE时(默认值)设置任何值都无效。

SQL> show parameter resource_limit
NAME                 TYPE        VALUE
-------------------- ----------- -------
resource_limit       boolean     FALSE

 其他:
1、设置SQL列显示宽度:col 列名 for 大小;
如col username for a20;
2、权限控制的策略在使用前一定要做好充分的测试,确保透彻理解每一条限制规则,另外将每一步的限制规则记录到一个特定的数据库维护手册中。

 

分享到:
评论

相关推荐

    oracle用户下.bash_profile文件修改

    修改.bash_profile文件主要是为了让oracle用户在登录后能够直接使用Oracle数据库相关的命令和环境变量。 .bash_profile文件中通常会包含以下几个关键的环境变量设置: 1. PATH变量:PATH变量列出了系统执行命令时...

    ORACLE_PROFILE的使用详解

    在Oracle数据库中,`PROFILE`是一种非常重要的机制,它可以用来控制和管理用户对数据库资源的使用情况。通过设置不同的资源限制,管理员能够确保数据库资源得到合理的分配和利用,防止个别用户过度消耗资源导致系统...

    oracle profile

    oracle profile 概要文件 Oracle系统为了合理分配和使用系统的资源提出了概要文件的概念。所谓概要文件,就是一份描述如何使用系统的资源(主要是CPU资源)的配置文件。将概要文件赋予某个数据库用户,在用户连接并...

    oracle 数据库用户被锁定在linux下操作

    在 Linux 下,Oracle 数据库用户锁定的解决方案主要包括两方面:一是使用 SQLPlus 命令行工具解除用户锁定,二是解决 SQLPlus 命令行工具中出现的错误。 使用 SQLPlus 命令行工具解除用户锁定 在 Linux 下,使用 ...

    oracle用户管理.ppt

    Oracle 用户管理的方法包括创建用户、分配角色、设置权限和限制资源使用。创建用户时,可以指定用户的名称、密码和默认表空间。分配角色时,可以将用户添加到角色中,并指定角色中的权限。设置权限时,可以指定用户...

    oracle11g一键安装脚本

    7、修改用户的限制文件 8、修改/etc/pam.d/login 9、修改/etc/profile文件 10、创建安装目录、修改文件权限 11、切换到oracle用户,设置oracle用户环境变量 12、切换到root 用户进入oracle安装包解压后的目录备份db_...

    随笔-linux下安装oracle 12c client

    2. 创建用户和用户组:我们需要创建 oracle 用户和 oinstall、dba、oper 用户组,以便 Oracle 软件的正确安装和运行。 创建用户和用户组 创建用户和用户组是安装 Oracle 12c 客户端的重要一步骤。我们可以使用以下...

    Oracle用户与对象权限与系统权限

    "Oracle用户与对象权限与系统权限" Oracle用户与对象权限是指用户在数据库中的访问权限和操作权限。Oracle用户可以拥有不同的权限,例如创建用户、修改用户、删除用户、访问数据库对象等。同时,Oracle用户也可以...

    oracle密码无时间限制修改

    默认情况下,Oracle数据库中的所有用户都关联到一个名为“DEFAULT”的Profile。这个Profile定义了一系列的资源限制和密码策略,包括密码复杂度、密码过期时间、密码历史记录等。 ### 修改密码无时间限制 若要将...

    oracle数据库用户管理

    总的来说,Oracle数据库用户管理涵盖了从创建用户、设置权限、管理密码生命周期到监控和调整用户资源使用等多个方面,确保了数据库环境的安全和高效运行。通过熟练掌握这些管理技巧,数据库管理员可以有效地保护数据...

    Oracle 主要配置文件介绍

    在定义环境变量时需要注意顺序,如定义 ORACLE_HOME 时使用到了 ORACLE_BASE,那么 ORACLE_HOME 的定义应该在 ORACLE_BASE 之后。此外,在使用中文版 CAMS 时,环境变量 NLS_LANG 的值应该设置为 AMERICAN.ZHS16CGB...

    oracle11G的linux下的离线安装教程.pdf

    涵盖了查看和修改主机名称、添加主机名与 IP 对应、关闭 SELinux、安装 Oracle 依赖包、关闭 Linux 防火墙、添加 oinstall 和 dba 组、创建 Oracle 安装目录、配置内存参数、修改用户限制文件、修改 pam.d 文件、...

    Oracle用户管理

    ### Oracle用户管理详解 #### 一、用户创建与基本概念 在Oracle数据库中,用户管理是一项重要的任务,它涉及到数据库的安全性和数据访问控制。对于初学者来说,掌握Oracle用户管理的基本操作至关重要。 **用户...

    Oracle用户授权

    默认PROFILE没有任何限制,意味着用户可以使用数据库的大部分资源。 5. **用户授权**: Oracle提供了多种方式来授予用户不同的权限。使用`GRANT`语句授权,如: ```sql GRANT connect, dba, resource TO peter; ...

    脱机下RedHat7.6安装Oracle11g详细攻略.pdf

    - 在oracle用户的`.bash_profile`文件中设置环境变量,如`ORACLE_BASE`、`ORACLE_HOME`、`ORACLE_SID`等。 - 更改`PATH`和`LD_LIBRARY_PATH`以包含Oracle的bin目录和其他必要的库文件目录。 - 设置字符集环境变量...

    Oracle8.1.7的安装

    ### Oracle 8.1.7 的...- 验证用户环境配置:`grep oracle /home/oracle/.bash_profile` 至此,Oracle 8.1.7数据库的安装与配置过程就完成了。通过上述步骤,我们可以确保Oracle数据库能够在Red Hat环境中顺利运行。

    oracle用户账号管理和权限控制

    1. **创建用户账号**:使用`CREATE USER`命令创建新用户,例如`CREATE USER "ORCLUSER_1" PROFILE "DEFAULT" IDENTIFIED BY "AAA" ACCOUNT UNLOCK;`,并授予`CONNECT`权限使其能连接数据库。 2. **用户账号状态**:...

Global site tag (gtag.js) - Google Analytics