SELECT_CATALOG_ROLE granted, still can't get in - Enterprise Manager (Archived)

Trying to use OEM to browse a remote database (from Windows 2000 Professional.) Log in as a regular user (no DBA, SYSDBA or SYSOPER privileges). It pops up a message that says "This application requires you have been granted the SELECT_CATALOG_ROLE. Contact your DBA to grant you this role." I have the SYSTEM userid/password on the remote database, so I log in and do this grant and commit. Now back in OEM, I try again and get the same message! I tried logging into OEM with the SYSTEM userid, and it works fine. So I know I have connectivity. What do I do now? 

Sorry, forgot to mention this is 9i Release 2. 

does this user also have the OEM_Monitor role.

Figured this one out on my own. I have 9i Release 2 installed on my Windows 2000 Pro workstation. The database I was attempting to connect to, however, is 9i Release 1 on Solaris. I tried connecting to a non-DBA userid on my local workstation, and it popped up an error saying I required "select any dictionary" privilege. So I granted that privilege and was then able to get in.
So next I went back in as SYSTEM on the Solaris database, revoked select_catalog_role and granted "select any dictionary". Now I was able to get into the Solaris database as a non-DBA user.
I'm guessing that what is happening is that 9i Rel 1 on Solaris is returning an error code to OEM on my workstation. But my workstation is 9i Rel 2, and the error code is mapped to a different (incorrect) message. This of course is very bad; Oracle should have backwards compatibility of the error messages across versions. 

Well, just to close the loop on this conversation I'm having with myself, I discovered that with only "select any dictionary" privilege, the Oracle 8i DBA Studio is unable to connect to an Oracle 9i database - insufficient privilege. So I went back on the Solaris database and reapplied SELECT_CATALOG_ROLE, and now both 8i and 9i client DBA Studio can connect to the database. So in summary, 8i DBA Studio requires SELECT_CATALOG_ROLE, and 9i Enterprise Manager console requires "select any dictionary". 

Thanks for the tidbit of info regarding the differences between 8i & 9i
OEM user priveledges. We have yet to migrate to 9i so, for me personally, I
would not have been able to offer much help. Perhaps you are a step ahead
of the rest of us here.
As for finding solutions to Oracle issues I find that troubleshooting on
my own, along with trial and error, is the best learning experience one can
hey...I talk to myself all the sure does help doesn't it.
good luck....Den

Also for ones who look for this there is a bug listed in metalink that the iDB92x EM Console (or Web console) will not connect to a 7.x DB. It gives the same errors as you listed. I will look in to it and see if your solution solved the problems as Oracle does not think it is an issue.


Database Vault

I installed Oracle 10g R2 on Solaris SPARC, then I updated it to and finally installed Oracle Database Vault.
Now, I am attempting to access to dva, but I got:
Login Error
You must have the DV_ADMIN or DV_SECANALYST role granted to your account in order to use this application.
I use SQL Developer to grant this roles to my username dvo without results.
Somebody has any idea? 
Hi All,
I have the same problem with Oracle DV on Windows XP platform. After installation I'm unable to access DVA with the same error "You must have DV_ADMIN or DV_SECANALYST ...".
I'm raising this old posting which has never been answered.
Now, with Oracle 11gR2 Database Vault I have exactly the same experience. When trying to connect to the Database Vault Administrator utility with the DV owner users I get the same message "You must have the DV_ADMIN or DV_SECANALYST role granted to your account in order to use this application." Of course, this user has these roles granted. I see no way to track this issue.
Some ideas?

Can't connect to a 10g db using OEM (9i & 10g both)

I've created a new database in 10g, and now would like to connect using OEM of either 9i & 10g, but whenever try to connect it always says:
This application requires you have been granted the SELECT ANY DICTIONARY privilege. Contact your DBA to grant you this privilege.
As I've already granted:
select any table to system
select_catalog_role to system
but still getting this error, can any one assist.
Thanks in advance. 
The message you see is often the case when using older 9i java Console against 10g database. The 10g EM Console should work (installs from the Client CD). 
sorry my mistake, was trying from 9i oem only, when tried from 10g oem, it worked.
thanks for the assistance.

Having OEM Console problem

Hi all,
I am trying to connect as system to a database on Tru64 using the Oracle Enterprise Manager Console on my laptop. The version of the OEM Console is and I get a message:
"This application requires you have been granted the SELECT ANY DICTIONARY privilege. Contact your DBA to grant you this privilege."
From what I have seen on metalink; this is a problem if I were trying to connect 9i Console to a 10g Database (and I have seen that already with the 9i console in addition to the notes).
Any suggestions/comments?
Are you using the Java or the Browser-based console? 
Got connected; it was an import from an old database so had to grant the priv.
Thanks for replying.
In fact this error is present when you use a user different from sys or system and you try to access the database through the oci java console.
Proceed as directed, grant the requested privilege to your user.
~ Madrid

connect to 10g via OEM console??

Hi there,
I used Oracle Enterprise manager console 9i client to connect to 10g database,
it reported the error as following for me:
The application requires you have been granted the select any dictionary privilege,
contact your dba to grant you this privilege.
But I used system use to connect it. system user has DBA role.
Note: I can connect to 9i/8i databases,but not for 10g.
Why? and What should I do ?
You need to use the 10g EM Console instead, the 9i one is not "forward compatible". The Console is packaged with the Client media in 10g. 
Thanks orafad 
I see now that you have 8i databases too, didn't notice that earlier.
Not sure, (no 8i db's around) but I think the "oldest" you can connect to with the 10.2 client is But hopefully that won't be a big problem, if any.

Oracle 9i Client Enterprise Manager connection to 10g?

I am trying to use EM form 9i client to connect to 10g DB and get a message "This applications requires you have been granted the SELECT ANY DICTIONARY privilege. Contact your DBA to grant you this privilge."
My DBA thinks it is a 9i to 10g issue he has granted very high level rights to the user id. Is there any known issues copnnecting a 9i EM to 10g?
Can anyone assist in correcting this issue?
Even if your DBA has granted you the SELECT ANY DICTIONARY privilege, you will still get the error when you try to connect as NORMAL. I have tried this and it also applies when you use the SYSTEM user.
You should connect alright as SYSDBA.
Give it a go 
I have tried your suggestion using an Oracle 9i client to attach to an Oracle 10g database which we just upgraded from 9i. Attaching as SYSDBA gives me the error message ORA-01031: insufficient privileges. I am set up with DBA privileges on the server. Are you aware of any other work around at this time?
Jim Hewitt 
The 9i OEM is not compatible with the 10g database. As an alternative, you can install the 10g OEM Java Console from the Oracle client CD.