Sometimes you would want to give only database monitoring access to some grid control users. You dont want them to get all other administrative privileges, like shutdown database, create tables, alter tables, drop tables etc. You can create such administrators in enterprise manager grid control by following the steps below.
Whenever you want to monitor a database target, you need to be able to login as a user to that database. Sometimes you might be logging in as SYSTEM or some other user that has DBA privileges. So the first step we need to perform, is to create a user in the target database, that has only limited privileges.
create user oem_view identified by xxx
default tablespace users temporary tablespace temp;
grant create session, oem_monitor to oem_view;
OEM_MONITOR is a role in the database, that has some specific privileges granted to it. If you do not want to grant all those privileges to this user, you can then query the data dictionary to see which privileges are granted to OEM_MONITOR and then decide which subset of that you want to grant to your user OEM_VIEW.
Once the user in the target database is created, you can use enterprise manager grid control to create the new grid control administrator.
Login to enterprise manager grid control as SYSMAN (Or any super administrator)
Setup -> Administrators -> Create
Remove the “Public” role that is listed in the right hand side table
Under Create Administrator: System Privileges select ‘VIEW ANY TARGET’.
Under Create Administrator: Targets, choose all the targets this new admin should be able to view
Refernce : Metalink Note 377310.1
Login as this new administrator user you created and set oem_view as the username for the database target in preferred credentials.