ORA-28001: the password has expired

The Problem

A user called me today and said that they were getting the ORA-28001 error message when logging onto one of the development databases. For those unfamiliar with the ORA-28001 error message, the full error is ORA-28001: the password has expired and it happens, you guessed it, when your password has expired!

The Cause

It is most likely that you have values defined in the profile for that user for the password_life_time and password_grace_time settings. This will mean that after x number of days your password will expire and then the user has x number of days (grace time) to change the password. If it is not changed within this time period the password will expire and the account will become locked.

The Solution

To resolve the ORA-28001 error message you have a couple of options. You can get the user to change their password. It should prompt them to change it when they are logging on via a SQL Plus command prompt so they can easily change the password themselves there. If you have security policies which need to be adhered to then this is the best and probably only option.

>You can then change the values for the password_grace_time and password_life_time parameters in the profile of the user who is having the problems. To do this for the DEFAULT profile you would run the commands below:

                  ALTER PROFILE DEFAULT LIMIT password_grace_time UNLIMITED;
                  ALTER PROFILE DEFAULT LIMIT password_life_time UNLIMITED;

I’ve written a more detailed article on this subject called ORA-28002: the password will expire in x days so have a read through that as well.

As always, let me know what you think in the comments box at the bottom of the page. I’d like to hear if this helps you out or even if it doesn’t!

Like it, share it...

Category: 11g

Related Posts

Leave a Reply

Your email address will not be published. Required fields are marked *