2017-05-26 5 views
0

1週間だけoracleユーザーを作成する必要があります。 SOの質問から、私はそれを作成してパスワードを失効させることができます。彼らはここにoracleユーザーを有効期限付きで作成する

Change Oracle User Password Expiry Date

を言う。しかし、ユーザーがアクセスしようとしたとき、彼はパスワードを変更することができますし、再度ログインすることができますのように。パスワードを使用して、例えば

、私はそれがユーザーの作成期限切れに行うことができますし、このようなプロフィール:

create user myuser identified by mypasswordr; 
create role mynormaluser; 
grant create session to mynormaluser; 
grant mynormaluser to myuser; 



CREATE PROFILE minuevoperfil LIMIT 
    PASSWORD_LIFE_TIME 1/24/60/60 
    PASSWORD_GRACE_TIME 1/24/60; 

ALTER USER myuser PROFILE minuevoperfil; 

は「USER_LIFE_TIME」のようなものがあります。ユーザーが一定期間後にログインできないようにすることができますか?

どうもありがとう

+0

私はそれを直接指定する方法はないと思います。 LOGONイベントにトリガーを作成し、それが問題のユーザーかどうか(またはログイン日とともにテーブルに入れる)をチェックして、範囲外の場合はエラーを発生させることができます。問題は、パフォーマンスに影響する可能性があるすべてのログインに対してトリガーが起動することです。 – OldProgrammer

答えて

0

私はDBMS_JOBSとあまり馴染みのないですが、おそらくこれは行くには良い方法ではありませんが、おそらく彼らが使用されるだろうか?

begin 
    sys.dbms_job.submit(job => :job, 
         what => 'SQL TO DELETE USER HERE', 
         next_date => to_date('27-05-2017 01:00:00', 'dd-mm-yyyy hh24:mi:ss'), 
         interval => null); 
    commit; 
end; 
関連する問題