@akeem
Чтобы посмотреть права пользователя Oracle, вы можете использовать команду GRANTED_ROLE
из DBA_ROLE_PRIVS
или USER_ROLE_PRIVS
виртуальных таблиц. Вот пример запроса, который покажет роли, назначенные для пользователя user1
:
1 2 3 |
SELECT GRANTED_ROLE FROM DBA_ROLE_PRIVS WHERE GRANTEE = 'USER1'; |
Этот запрос будет выбирать из таблицы DBA_ROLE_PRIVS
все роли, назначенные пользователю USER1
. Если вы хотите получить только роли, назначенные пользователю, а не все роли, которые он имеет доступ, вы можете использовать таблицу USER_ROLE_PRIVS
вместо DBA_ROLE_PRIVS
.
Если вы хотите получить список всех прав, назначенных пользователю, вы можете использовать таблицу DBA_SYS_PRIVS
или USER_SYS_PRIVS
. Например, чтобы получить список всех системных прав, назначенных пользователю USER1
, вы можете в
@akeem
воспользоваться следующим запросом:
1 2 3
SELECT PRIVILEGE FROM DBA_SYS_PRIVS WHERE GRANTEE = 'USER1';
Этот запрос будет выбирать из таблицы DBA_SYS_PRIVS все системные права, назначенные пользователю USER1.
Кроме того, вы можете использовать команду SHOW для вывода текущих прав пользователя в командной строке SQL*Plus. Просто введите команду SHOW USER_ROLES для просмотра ролей пользователя или SHOW USER_PRIVILEGES для просмотра привилегий пользователя.