IT Soldier Sakuri !!

Oracle使い。いつのまにかIT戦士になってしまったさくりの可哀想な奮闘記。

Oracle アカウントのパスワード有効期限変更方法と無期限設定

今日後輩ちゃんが寿退社した。
キラッキラの笑顔でお世話になりました!と去って行った。
新卒3年で、配属当初から私がOJTをしていたので、ここ1年は課が違っていたけど、
仕事上ではツーカーの仲だった。(だいたい雰囲気で察せるという意味で)
彼のどこが好きなの?と聞いた私に、「今世はこれでいいんです。」と言った後輩ちゃんの言葉が忘れられない。輪廻転生?
とっても不思議ちゃんだったので、きちんとした家庭が築けるのかとても心配。
どうか幸せになってほしい。



さて、忘れる・忘れないといえば、パスワードの有効期限!(強引ながらw)
Oracle11gからアカウントのパスワードの有効期限はデフォルト180日になっている。
これ結構トラップだと思うんだよね。
Oracle使ってる企業でパスワードを3ヶ月置きに変更するところなんてあるのかな?


まずは確認してみる。

sysdbaでログインして下記コマンドを実行する。

select * from dba_profiles where resource_name = 'PASSWORD_LIFE_TIME';
C:\Users\SAKURI\sql>sqlplus /nolog

SQL*Plus: Release 11.2.0.1.0 Production on831 20:29:45 2015

Copyright (c) 1982, 2010, Oracle.  All rights reserved.

20:30:05 SQL> conn sys/system@xe as sysdba
接続されました。
20:30:26 SQL> select *
20:31:13   2  from dba_profiles
20:31:13   3  where resource_name = 'PASSWORD_LIFE_TIME'
20:31:13   4  /

PROFILE                                                      RESOURCE_NAME                                            RESOURCE_TYPE    LIMIT
------------------------------------------------------------ ---------------------------------------------------------------- ---------------- ------
DEFAULT                                                      PASSWORD_LIFE_TIME                                       PASSWORD         180

20:31:14 SQL>


PROFILEがDEFAULTしかないので、デフォルトが全アカウントに適用されていることになる。
つまり全アカウントのパスワード有効期限は180日ということになる。
3日前からワーニングは出るものの、絶対ロックかかってアチャー(ꐦ ´͈ ᗨ `͈ ) '`,、ワラエナイヨ


じゃどうする?1年(365日)に変更する?
変更コマンドはコレ。

alter profile default limit password_life_time 日付;
20:31:14 SQL> alter profile default limit password_life_time 365
20:32:07   2  /

プロファイルが変更されました。

20:32:07 SQL> select *
20:32:19   2  from dba_profiles
20:32:19   3  where resource_name = 'PASSWORD_LIFE_TIME'
20:32:19   4  /

PROFILE                                                      RESOURCE_NAME                                            RESOURCE_TYPE    LIMIT
------------------------------------------------------------ ---------------------------------------------------------------- ---------------- ------
DEFAULT                                                      PASSWORD_LIFE_TIME                                       PASSWORD         365

20:32:19 SQL> alter profile default limit password_life_time unlimited;


いやーぶっちゃけ1年とかもっと忘れるでしょw
うちの会社はドドーンと無期限だよ!

無期限コマンドはコチラ。

alter profile default limit password_life_time unlimited;
20:32:19 SQL> alter profile default limit password_life_time unlimited;

プロファイルが変更されました。

20:32:47 SQL> select *
20:33:01   2  from dba_profiles
20:33:01   3  where resource_name = 'PASSWORD_LIFE_TIME'
20:33:01   4  /

PROFILE                                                      RESOURCE_NAME                                            RESOURCE_TYPE    LIMIT
------------------------------------------------------------ ---------------------------------------------------------------- ---------------- ------
DEFAULT                                                      PASSWORD_LIFE_TIME                                       PASSWORD         UNLIMITED

20:33:01 SQL>

後輩ちゃんが寿退社で、もう一人10歳くらい上の先輩が異動になるからって
私がダーマ神殿に行かされるわけなんだけどさ(´・ε・̥ˋ๑)