2017-01-13 10 views
0

Можно ли предоставить разрешения на просмотр для списка пользователей, которые существуют в таблице?Грант Выберите для пользователей со стола?

У меня есть вид MY_VIEW и у меня есть бассейн USER s. Некоторые USER s находятся в таблице HAS_PERMISSION(NAME , ID) Некоторые USER s находятся в таблице NO_ACCESS(NAME, ID).

Нет кроссовера, и список строк в каждой таблице может увеличиваться или уменьшаться с течением времени. Я пытался что-то вроде:

GRANT SELECT ON MY_VIEW TO 
(SELECT PERSON FROM HAS_PERMISSION WHERE NAME = USER) ; 

Но мне говорят ERROR at line 2: ORA-00987: missing or invalid username(s)

+0

Я не думаю, что это возможно. – CptMisery

ответ

1

Это не будет работать. Если бы это что-то сделало, это просто предоставило бы пользователям MySQL разрешение. Однако ваши люди, надеюсь, не подключаются напрямую к базе данных, а вместо этого используют приложение, которое вы создали, у которого есть собственный пользователь (который не должен быть root/admin). Ваше приложение должно проверить разрешения для пользователя и решить, может ли этот человек получить доступ к странице вашего приложения, где используется представление.

+0

Черт, спасибо. К счастью, это вымышленная программа. Мне нужно будет что-то написать в самом выражении органа представления вида, который дает доступ к тому, кто является пользователем, если он соответствует их правильной таблице. – NateH06

 Смежные вопросы

  • Нет связанных вопросов^_^