![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
FireBird View с параметрами. [D7]
Михаил © (2014-03-03 18:01:00)В View можно передавать параметры для подзапроса?
select * from myview
create view myview(c)
as
select ulogin, upassword from users where ulogin=? and upassword=?
Rouse_ (2014-03-04 18:04:00) [1]
> Зачем было сколько мучать?
Ega23 © (03.03.14 21:51) [11]
Михаил (2014-03-04 15:56:00) [2]
> Ega23 © (04.03.14 15:22) [29]
Зачем было сколько мучать?
Ega23 (2014-03-04 15:22:00) [3]Видишь, как всё просто? :)
Михаил (2014-03-04 15:07:00) [4]Все спасибо, очень виноват.
GRANT SELECT ON USERS TO PROCEDURE NEW_PROCEDURE;
Михаил (2014-03-04 14:52:00) [5]Так, стоп, ничего не пишите...
Inovet (2014-03-04 14:45:00) [6]> [25] Михаил (04.03.14 14:43)
> На вызов процедуры права даны
Осталось дать процедуре.
Михаил (2014-03-04 14:43:00) [7]
> Кщд (04.03.14 14:03) [24]
http://i038.radikal.ru/1403/1e/28e25499849e.png.Что не так дал?
На вызов процедуры права даны, не даны права таблице которая участвует в теле процедуры.
А, и не будь голословным, где же это в документации?
Кщд (2014-03-04 14:03:00) [8]>Михаил (04.03.14 13:09) [23]
дать права процедуре
тех, кто не желает читать документацию по используемому средству, окружают сплошные секреты
Михаил (2014-03-04 13:09:00) [9]
> во-первых, враки(вы же версию скрываете, ага?)
FB 2.5
Михаил (2014-03-04 13:02:00) [10]
> если делать неправильно, то нельзя
> если правильно, можно(и нужно) делать именно так
Как правильно останется секретом?
Кщд (2014-03-04 12:47:00) [11]>Михаил (04.03.14 12:37) [19]
если делать неправильно, то нельзя
если правильно, можно(и нужно) делать именно так
Кщд (2014-03-04 12:44:00) [12]>Михаил (04.03.14 12:24) [17]
во-первых, враки(вы же версию скрываете, ага?)
во-вторых, контексты - читать умеем?
Михаил (2014-03-04 12:37:00) [13]
> обычно запрещают доступ на прямой селект из таблиц, но разврешают
> из вьюх и выполнение хранимок.
Ну вот пример
http://i038.radikal.ru/1403/1e/28e25499849e.png
и если в NEW_PROCEDURE будет запрос из таблицы USERS, то это будет ошибкой доступа.
Я вы пишите что так можно.
clickmaker (2014-03-04 12:27:00) [14]обычно запрещают доступ на прямой селект из таблиц, но разврешают из вьюх и выполнение хранимок.
В особо тяжелых случаях таблицы и вьюхи могут даже разносить по разным базам.
Михаил (2014-03-04 12:24:00) [15]
> Кщд (04.03.14 11:44) [16]
Если доступ к таблице запрещен, то и из процедуры доступа не будет.
Кщд (2014-03-04 11:44:00) [16]>Михаил (04.03.14 11:29) [15]
хранимая процедура, как советовали
либо использовать контексты
Михаил (2014-03-04 11:29:00) [17]Может быть вы подскажите как это делается правильно.
Ну попробую объяснить еще раз чего я хотел:
1) Вот выставлены такие права на таблицу и вью
http://s43.radikal.ru/i101/1403/b4/00e08a5c57a4.png
Для SYSDBA сменили пароль и им не пользуемся, для подключения к БД используем пользователя ZUSER.
2)Если дать ZUSER право на select на прямую к таблице users, то так называемый злоумышленник может с другого клиента выгрести все логины/пароли.
Вот я и начал мудрить через VIEW.
Inovet (2014-03-04 10:30:00) [18]> [13] Кщд (04.03.14 08:42)
Да, тогда нет.
Кщд (2014-03-04 08:42:00) [19]>Inovet © (03.03.14 21:52) [12]
а вроде - нет: "Михаил (03.03.14 18:02) [1]"
))
>Ega23 © (03.03.14 21:51) [11]
мне немного всё равно)
Inovet (2014-03-03 21:52:00) [20]> [10] Кщд (03.03.14 20:42)
Вроде есть они в [0].