2012年5月16日水曜日

Oracle11g パスワード設定

Oracle10gまでパスワードのデフォルト有効期限は無期限でした。
11gからは180日がデフォルトになります。

変更が必要な場合・・・・
以下に関連するコマンドを記載します。

・プロファイルのパスワード有効期限を無期限にする
alter profile default limit password_life_time unlimited;

・ユーザーのパスワードを再設定する
alter user ユーザ名 identified by 新パスワード;

・ロックされているアカウントのロックを解除する
alter user ユーザ名 account unlock;

<手順>

1 oracle管理者アカウントにてログイン

2 sysdbaにてOracleログイン

3 現在のパスワード有効期限を確認

3.1 該当アカウントのユーザプロファイルを確認

SQL> select username,profile from dba_users
      where username like 'XXX';

3.2 ユーザプロファイルのパスワード有効期限を確認

SQL> select *  from dba_profiles
      where profile = 'DEFAULT'
       and resource_name = 'PASSWORD_LIFE_TIME';

4 パスワード有効期限の変更

4.1 新規にユーザプロファイルを作成し、有効期限を新たに設定

create profile XXX_PROFILE limit PASSWORD_LIFE_TIME 360;
※無期限にするなら360→UNLIMITEDを指定

4.2 作成プロファイルのパスワード有効期限を確認

SQL> select *  from dba_profiles
     where profile = 'XXX_PROF'
     and resource_name = 'PASSWORD_LIFE_TIME';

4.3 作成したプロファイルを該当アカウントに割り当て

alter user XXX profile XXX_PROFILE;

4.4 該当アカウントのユーザプロファイルを確認

SQL> select username,profile from dba_users
      where username like 'XXX';



以上。