36
Views
3
Comments
How to access DBA_USERS
Question

I need to know when a user's database account password is going to expire and I want to query the DBA_USERS view. I keep getting an error that the table or view doesn't exist.

This is an Oracle database that is connect via an extension and I'm trying to do this query in an Advanced Query

/* %LogicalDatabase%=GetLogicalDatabase({ORDERS}) */
SELECT username, account_status, lock_date, expiry_date FROM DBA_USERS

Does anyone know how to get this to work?
2012-03-16 12-21-09
João Rosado
Staff
HI gerry,

Well, you can't. All "dba_" tables can only be accessed by a user with dba permissions, that your platform runtime user won't have.

"table or view doesn't exist" means you don't have permissions to know it exists.

Why do you need to know it? Either turn off the password expiry or just create something sometime to keep track on when the last time it was changed (since changing it it a manual process anyway, so just record when it was done and when it will need to be done again.

Regards,
João Rosado
2012-08-01 17-33-40
Gerry
Turns out that I can. I'm connecting with a user that has DBA privs and DBA_USERS is a View under the SYS schema. I just pulled it into the database extension and now I'm in business...
2012-03-16 12-21-09
João Rosado
Staff
Well,

I'm not sure what is worse is terms of security: turning off password expire dates or having an application with DBA credentials.
I would just turn off expires off instead of using that ...but this is just my opinion.
Community GuidelinesBe kind and respectful, give credit to the original source of content, and search for duplicates before posting.