一、Profile文件概述:Profiles是Oracle安全策略的一个组成部分,当Oracle建立数据库时,会自动建立名称为Default的profile,当建立用户没有指定profile,那么oracle就将defalut分配给用户。

1、默认情况下,用户连接数据库,形成回话,使用CPU和内存资源是没有限制的。但是在一些高并发的应用,且多个应用部署到同一服务器上时,因为服务器的CPU和内存是有限的,所以,大多数企业会根据应用对于自身的重要性,来对各个库进行内存和CPU的分配。除此之外,还有用户的密码管理,用户的登录尝试次数,用户的密码锁定后多长时间释放,密码生命周期等参数都是通过Profile来设置的,当然这里只列举了一下部分!

2、Profile文件主要规定了资源使用的限制和密码(也就是口令)使用的规则,Profile定义之后,可以做用到每个用户之上,对每个用户的安全活动进行限制。

3、下面Oracle建立数据库时,生成的名为Default的profile

4、配置文件创建方法

create profile 配置文件名 limit

配置参数1 值1

配置参数2 值2

5、配置文件的使用方法

5.1、将配置文件中的规则指定给特定的用户,这里拿Failed_Login_Attempts(在账户被锁定前允许的登录次数)举例,其他的规则也是一样,如果要指定个特定的用户

左图创建了一个test规则的profile,允许用户在被锁定前,登录三次,如果失败被锁定2天,并将这个profile赋给了scott用户,也就是说这个规则只是用于scott用户

连续登录三次,失败后,账户被锁定,如何解锁用户请参考Oracle 系统常用命令

5.2、修改默认的profile,使其作用于所有的用户

左图修改了安装数据库默认产生的profile文件,并修改了其参数,使所有的用户必须在13天内修改密码,否则将无法登录,如果不理解口令,下面有介绍。

6、删除profile

二、Profile  口令管理

1、Composite_Limite

指定一个会话的总的资源消耗, 以service units单位表示。oracle数据库以有利的方式计算cpu_per_session, connect_time, logical_reads_per_session和private-sga总的service units

2、Session_Per_User

指定限制用户的并发会话的数目

3、Cpu_Per_Session

指定会话的cpu时间限制, 单位为百分之一秒

4、Cpu_Per_Call

指定一次调用(解析、执行和提取)的cpu时间限制, 单位为百分之一秒

5、Logical_Reads_Per_Session

指定一个会话允许读的数据块的数目, 包括从内存和磁盘读的所有数据块

6、Logical_Read_Per_Call

指定一次执行sql(解析、执行和提取)调用所允许读的数据块的最大数目

7、Idle_Time

指定会话允许连续不活动的总的时间, 以分钟为单位, 超过该时间, 会话将断开。但是长时间运行查询和其他操作的不受此限制

8、Connect_Time

指定会话的总的连接时间, 以分钟为单位

9、Private_Sga

指定一个会话可以在共享池(sga)中所允许分配的最大空间, 以字节为单位。(该限制只在使用共享服务器结构时才有效, 会话在sga中的私有空间包括私有的sql和pl/sql, 但不包括共享的sql和pl/sql)

10、Failed_Login_Attempts和Password_Lock_Time

Failed_Login_Attempts设置账户在被锁定之前允许登录的次数

Password_Lock_Time 指定帐户被锁定的天数. 1/24/60对应的是1分钟. 但是, 1分钟后只有密码正确了, 才可以自动解锁. 如果该参数最后的值是UNLIMITED, 或需要立即给帐户解锁, 就需要DBA用手动方式来给帐户解锁.

11、 Password_Life_Time与Password_Grace_Time

他的作用是:强迫除dba之外的用户在设置的天数内修改密码!!!

这两个口令是结合起来使用的,Password_Life_Time指定用户账户的有效期,到达这个天数的用户叫做到期用户,到期账户会在登陆时,被提醒将在多少天后过期,但仍然可以使用该口令,因为Password_Grace_Time可以设定一个宽限天数,如果在Password_Grace_Time规定的宽限天数内,仍然没有修改口令,则账户过期,将过期账户,即不能登录数据库。代码如下:

a、设置所有的用户的密码将在3天后到期,并且宽限时间为10天(也就是给他们10天时间去修改密码),也就是说超过了13天之后用户还没有修改登录口令(密码),用户将无法正常登陆数据库。

设置完之后可以正常登录,而且没有提醒,因为还没有过三天

现在将系统时间设置到3天之后,再次连接登录

出现提醒:提示当前用户,它的登录口令将在10天后过期,但是此时还是可以正常连接到数据库

现在将系统时间设置到10天后,在进行登录

出现提示:当前用户的密码已经过期,并且强制使用户修改密码,而且登录失败。

12、Password_Rescue_Time和Password_Rescue_Max

13、password_verify_function

使用系统口令校验函数verify_function, 改成校验函数后实现以下口令规则:

口令不能少于4个字符

口令不能与用户名相同

口令至少包含一个字符, 一个数字和一个特殊字符($, _, #, !等)

 

Oracle Profile文件的更多相关文章

  1. oracle profile 概要文件

    Profile文件概述: Profile是Oracle安全策略的一个组成部分,当Oracle建立数据库时,会自动建立名称为Default的Profile文件. 创建用户的时候,如果没有指定profil ...

  2. Oracle——概要文件profile

    profile文件详解 一.目的         Oracle系统中的profile可以用来对用户所能使用的数据库资源进行限制,使用Create Profile命令创建一个Profile,用它来实现对 ...

  3. ORACLE profile列4 --CREATE PROFILE

    这个博客是ORACLE profile系列第四部分.主要说一下,假设你创建profile而使用profile资源和password控制 CREATE PROFILE Note: Oracle reco ...

  4. 误删除SAP ECC中的profile文件

    环境:ECC6.0 EHP4  FOR ORACLE ON WINDWS X64下 今天在RZ10配置系统参数文件的时候,不小心错删除了instance profile文件,这下惨了,这是操作系统层级 ...

  5. 让/etc/profile文件修改后立即生效

    方法1: 让/etc/profile文件修改后立即生效 ,可以使用如下命令: # .  /etc/profile 注意: . 和 /etc/profile 有空格 方法2: 让/etc/profile ...

  6. Linux中profile文件详解(转)

    1.Linux是一个多用户的操作系统.每个用户登录系统后,都会有一个专用的运行环境.通常每个用户默认的环境都是相同的,这个默认环境实际上就是一组环境变量的定义.用户可以对自己的运行环境进行定制,其方法 ...

  7. Xcode 如何删除过期的Provisioning Profile文件

    Xcode 中所有的Provisioning Profile文件,都在 ~/Library/MobileDevice/Provisioning Profiles  这个文件夹下:进入该文件夹,按照文件 ...

  8. 修改/etc/profile文件

    通常情况下,/etc/profile文件是只读的,直接用vi或gedit打开修改后是无法保存的.要修改profile,需要取得root权限,(使用gedit编辑)应该如下: $sudo gedit / ...

  9. ubuntu下非本账户的.profile文件的修改

    今天不小心在账户了修改了自己的.profile文件,导致重启之后账户无法进入,点登陆账户后黑屏后就重新回到账户登陆界面.一番折腾之后终于成功修改了原账户中的.profile文件,成功从新进入了原账户. ...

随机推荐

  1. 深入理解java虚拟机(九)类加载器以及双亲委派模型

    虚拟机把类加载阶段中“通过一个类的全限定名来获取描述此类的二进制字节流”这个动作放到虚拟机外部去实现,以便让程序自己决定如何去获取所需要的类.实现这个动作的代码模块称为“类加载器”. 类与类加载器 任 ...

  2. linux查看日志文件内容命令tail、cat、tac、head、echo详解

    linux查看日志文件内容命令tail.cat.tac.head.echo tail -f test.log你会看到屏幕不断有内容被打印出来. 这时候中断第一个进程Ctrl-C, ---------- ...

  3. Verilog MIPS32 CPU(三)-- ALU

    Verilog MIPS32 CPU(一)-- PC寄存器 Verilog MIPS32 CPU(二)-- Regfiles Verilog MIPS32 CPU(三)-- ALU Verilog M ...

  4. selenium三大浏览器driver下载地址

    Chrome 点击下载chrome的webdriver: http://chromedriver.storage.googleapis.com/index.html 不同的Chrome的版本对应的ch ...

  5. android hook getdeceiveid

    很多手机软件使用了手机绑定.QQ,微信等.如果使用了不同的设备,则需要验证码. 要用一台手机来模拟与另一台手机一样环境,估计hook 系统的相关函数可以实现. 想着应该有现成的软件的,例如 smart ...

  6. C语言C++编程学习:排序原理分析

    C语言是面向过程的,而C++是面向对象的 C和C++的区别: C是一个结构化语言,它的重点在于算法和数据结构.C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现 ...

  7. 在IIS上部署Asp.Net Core 2.2.0

    1. .NET Core与Windows环境 Asp.Net Core 2.2.0 Windows 10 2. 先决条件   下载并安装.Net Core Hosting Bundle. 3. 部署过 ...

  8. WPF 实现INotifyPropertyChanged .Net Framework 4.5

    自己动手写了一个基类来实现INotifyPropertyChanged接口,以后可以直接使用. using System.ComponentModel; using System.Runtime.Co ...

  9. NGrinder操作指南

    一.使用nGrinder谷歌插件录制性能测试脚本: 1.下载录制插件压缩包ngrinder-recorder-1.0.7z,解压到本地目录. 2.打开Chrome浏览器,URL框内输入chrome:/ ...

  10. RESTDebugger-我们的REST调试工具!!

    Delphi:XE8 XE8已经为我们提供了调试REST程序的工具了,就是“RESTDebugger.exe”.这个小工具,在XE8的菜单中可以找到: 如果在这里找不到,我们可以直接在XE8的bin目 ...