Oracle profile的使用

andyann發表於2011-05-23
profile的功能主要是控制使用者資源以及密碼的,對系統安全起著很重要的作用,
在規劃資料庫還是日常管理中,都最好把這個規劃中進去。

PROFILE的使用:
一、使profile生效:
SQL> show parameter resource_limit
SQL> alter system set resource_limit=true;

二、建立PROFILE格式(預設的):
CREATE PROFILE PROFILENAME LIMIT
  SESSIONS_PER_USER UNLIMITED
  CPU_PER_SESSION UNLIMITED
  CPU_PER_CALL UNLIMITED
  CONNECT_TIME UNLIMITED
  IDLE_TIME UNLIMITED
  LOGICAL_READS_PER_SESSION UNLIMITED
  LOGICAL_READS_PER_CALL UNLIMITED
  COMPOSITE_LIMIT UNLIMITED
  PRIVATE_SGA UNLIMITED
  FAILED_LOGIN_ATTEMPTS 10
  PASSWORD_LIFE_TIME 365
  PASSWORD_REUSE_TIME UNLIMITED
  PASSWORD_REUSE_MAX UNLIMITED
  PASSWORD_LOCK_TIME 1
  PASSWORD_GRACE_TIME 7
  PASSWORD_VERIFY_FUNCTION NULL;

三、更改使用者profile。

SQL> alter user username profile app_profile;  
SQL> alter user username profile default;


四、引數說明:

資源引數(resource_parameters):
1、Session_per_user:指定限制使用者session的數額。

2、Cpu_per_session:指定對話的CPU時間限制,組織為百分之1秒。

3、Cpu_per_call:指定一次呼叫(解析、施行和提取)的CPU時間限制,單位為百分之1秒。

4、Connect_time:指定對話的總的連線時間,以分鐘為單位。

5、Idle_time:指定對話容許連續不活動的總的時間,以分鐘為單位,超過該時間,對話將斷開。但是長時間運作查詢和其餘操作的不受此限制。

6、Logical_reads_per_session:指定一個對話容許讀的資料塊的數額,包括從記憶體儲器和磁碟讀的全部資料塊。

7、Logical_read_per_call:指定一次施行SQL(解析、施行和提取)呼叫所容許讀的資料塊的最大數目。

8、Private_sga:指定一個對話可以在共享池(SGA)中所容許分配的最大空間,以位元組為組織。(該限制只在運用共享伺服器構造時才有效,對話在SGA中的私得空間包括私有的SQL和PL/SQL,但不包括共享的SQL和PL/SQL)。

9、Composite_limit:指定一個對話的總的資源耗費,以service units部門示意。Oracle資料庫以有益的模式計算 cpu_per_session,connect_time,logical_reads_per_session和private-sga總的 service units


密碼引數(password_parameters):

1、FAILED_LOGIN_ATTEMPTS 10:指定在帳戶被鎖定先頭所容許嘗試登陸的的最大次數

2、PASSWORD_LIFE_TIME 365:指定同一密碼所容許執行的天數。

3、PASSWORD_REUSE_TIME UNLIMITED:指定了密碼不能重用前的天數。指定的天數,然後密碼可以重複使用。
4、PASSWORD_REUSE_MAX UNLIMITED:指定了目前密碼被重用預先密碼改變的次數。
   這兩個引數務必相互聯絡關係設立,兩個引數都必須被設立為整數。
   例子:password_reuse_time=30,password_reuse_max=10,使用者可以在30天之後重用該密碼,要求密碼務必被改變超過10次。
         password_reuse_time=30  password_reuse_max unlimited,使用者永遠不能重用密碼。

5、PASSWORD_LOCK_TIME 1 :指定登陸嘗試失敗次數抵達後帳戶的鎖定時間,以天為單位。
   與FAILED_LOGIN_ATTEMPTS一起使用。

6、PASSWORD_GRACE_TIME 7 :指定寬限天數,資料庫下發警告到登陸失靈前的天數。
   與PASSWORD_LIFE_TIME一起使用,如果在 grace period內沒改變密碼,則密碼會失靈,連線資料庫被回絕。
   如其沒設立password_grace_time引數,預設值unlimited將跳動一個資料庫警告,但是容許使用者持續聯接。

7、PASSWORD_VERIFY_FUNCTION NULL :該欄位容許將複雜的PL/SQL密碼證驗指令碼做為引數傳接到create profile話語。
   Oracle資料庫提供了一個默許的指令碼,但是自各兒可以創造自個兒的證驗守則或應用第三方軟體印證。
   對Function姓名,指定的是密碼證驗守則的姓名,指定為Null則寓意不施用密碼應驗效能。
   如若為密碼引數指定表示式,則該表示式可以是隨便格式,去除資料庫標量子查詢。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24070945/viewspace-696077/,如需轉載,請註明出處,否則將追究法律責任。

相關文章