【ORACLE】プロファイルを作成・変更・削除するSQL
ここではORACLEデータベースで、プロファイルを作成・変更・削除するSQLを紹介しています。
プロファイルの一覧を確認する方法は↓で紹介しています。
>>【ORACLE】プロファイルの一覧を確認するSQL
プロファイルとは
プロファイルとは、ユーザーのリソース制限やパスワードの制限をかけることが出来るオブジェクトです。
リソース制限とは、1ユーザあたりの同時セッション数やセッションの接続時間などのことです。
パスワードの制限とは、パスワードの有効期限やパスワードに何回ミスしたらロックする、といった設定のことです。
プロファイルを作成するSQL
プロファイルの作成はCREATE PROFILE文を使います。
プロファイルの作成や変更、削除にはシステム権限が必要です。
作成:CREATE PROFILE
変更:ALTER PROFILE
削除:DROP PROFILE
システム権限の付与の方法については↓で紹介していますので参考にしてください。
>>【ORACLE】システム権限を付与・取消するSQL
CREATE PROFILE文の基本構文
パスワード制限するときのCREATE PROFILEの基本構文は次の通りです。
CREATE PROFILE プロファイル名
[ SESSIONS_PER_USER [数 | UNLIMITED | DEFAULT] ]
[ CPU_PER_SESSION [数 | UNLIMITED | DEFAULT] ]
[ CPU_PER_CALL [数 | UNLIMITED | DEFAULT] ]
[ CONNECT_TIME [数 | UNLIMITED | DEFAULT] ]
[ IDLE_TIME [数 | UNLIMITED | DEFAULT] ]
[ LOGICAL_READS_PER_SESSION [数 | UNLIMITED | DEFAULT] ]
[ LOGICAL_READS_PER_CALL [数 | UNLIMITED | DEFAULT] ]
[ PRIVATE_SGA [数 | UNLIMITED | DEFAULT] ]
[ COMPOSITE_LIMIT [数 | UNLIMITED | DEFAULT] ]
[ FAILED_LOGIN_ATTEMPTS [数 | UNLIMITED | DEFAULT] ]
[ PASSWORD_LIFE_TIME [数 | UNLIMITED | DEFAULT] ]
[ PASSWORD_REUSE_TIME [数 | UNLIMITED | DEFAULT] ]
[ PASSWORD_REUSE_MAX [数 | UNLIMITED | DEFAULT] ]
[ PASSWORD_LOCK_TIME [数 | UNLIMITED | DEFAULT] ]
[ PASSWORD_GRACE_TIME [数 | UNLIMITED | DEFAULT] ]
[ PASSWORD_VERIFY_FUNCTION [ファンクション | NULL | DEFAULT] ]
;
パラメータ名 | 意味 |
SESSIONS_PER_USER | 1ユーザー当たりの同時セッション数 |
CPU_PER_SESSION | 1セッション当たりのCPU時間 |
CPU_PER_CALL | 1コール当たりのCPU時間 |
CONNECT_TIME | 1セッション当たりの接続時間 |
IDLE_TIME | セッションの非活動時間 |
LOGICAL_READS_PER_SESSION | 1セッション当たりの読込可能なブロック数 |
LOGICAL_READS_PER_CALL | 1コール当たりの読込可能なブロック数 |
PRIVATE_SGA | 1セッション当たりのSGAに割当可能なプライベート領域 |
COMPOSITE_LIMIT | 1セッション当たりのリソースの総コスト |
FAILED_LOGIN_ATTEMPTS | パスワードロックされるまでのログイン失敗回数 |
PASSWORD_LIFE_TIME | パスワードの使用可能期間(日) |
PASSWORD_REUSE_TIME | パスワードを再利用できるようになる期間(日) |
PASSWORD_REUSE_MAX | パスワードを再利用するまでに必要な変更回数 |
PASSWORD_LOCK_TIME | パスワードがロックされる期間(日) |
PASSWORD_GRACE_TIME | 期限切れのパスワードを変更するまでの猶予期間(日) |
PASSWORD_VERIFY_FUNCTION | パスワード検証用のファンクション |
CREATE PROFILE文のSQLサンプル
次のCREATEPROFILE文
・ロックされるまでのログイン失敗回数:5回
・パスワードの使用できる期間:30日間
・パスワードが再利用できるまでの期間:90日間
・パスワードがロックされる期間:1日
・パスワード変更までの猶予期間:15日間
CREATE PROFILE prf1
FAILED_LOGIN_ATTEMPTS 5
PASSWORD_LIFE_TIME 30
PASSWORD_REUSE_TIME 90
PASSWORD_LOCK_TIME 1
PASSWORD_GRACE_TIME 15
;
プロファイルを変更するSQL
プロファイルの変更はALTER文を使います。
ALTER PROFILE プロファイル
変更するパラメータやオプション;
変更するパラメータやオプションは、作成時と同じ書き方です。
プロファイルを削除するSQL
プロファイルの削除はDROP文を使います。
DROP プロファイル名 [CASCADE];
プロファイルがユーザに割り当てられている場合、CASCADEオプションを指定することで、ユーザの割り当てからも同時に削除することが出来ます。
まとめ
プロファイルの作成はCREATE PROFILE、変更はALTER文、削除はDROP文を使います。
プロファイルの作成や変更、削除にはシステム権限が必要です。
作成:CREATE PROFILE
変更:ALTER PROFILE
削除:DROP PROFILE
システム権限の付与の方法については↓で紹介していますので参考にしてください。
>>【ORACLE】システム権限を付与・取消するSQL