Thread: Скрытие части схемы для определённых ролей
Насколько я понимаю, на сегодняшний день нельзя в postgresql (и в других sql db) скрыть часть схемы для пользователей? То есть, сделать так, чтобы нельзя было увидеть структуру таблиц, функций, кроме тех которые явно разрешено? Вопрос: почему? есть какая-то принципиальная проблема? Почему вопрос возник: Дело в том что у нас есть база, и у нас в ней "ноу–хау" лежат, в том числе им является структура базы, схема взаимодействия триггеров и т.п. Но нужда заставляет дать пользователям доступ прямо в базу к определённым записям... Сейчас я рассматриваю варианты решения проблемы с помощью dblink из другой базы, куда будут подключаться пользователи или sqlrelay-фильтра. Но как то грустны эти варианты, если честно...
Attachment
Денис пишет: > Насколько я понимаю, на сегодняшний день нельзя в postgresql (и в > других sql db) скрыть часть схемы для пользователей? То есть, сделать > так, чтобы нельзя было увидеть структуру таблиц, функций, кроме тех > которые явно разрешено? > > Вопрос: > почему? есть какая-то принципиальная проблема? > потому что в этом нет ни малейшей необходимости. > Почему вопрос возник: > Дело в том что у нас есть база, и у нас в ней "ноу–хау" лежат, в том > числе им является структура базы, схема взаимодействия триггеров и > т.п. Превед проприетарщекам :-) Гыыыыы.
2009/9/11 sad@bankir.ru <sad@bankir.ru>: > Денис пишет: >> >> Насколько я понимаю, на сегодняшний день нельзя в postgresql (и в >> других sql db) скрыть часть схемы для пользователей? То есть, сделать >> так, чтобы нельзя было увидеть структуру таблиц, функций, кроме тех >> которые явно разрешено? >> >> Вопрос: >> почему? есть какая-то принципиальная проблема? >> > > потому что в этом нет ни малейшей необходимости. Что за чушь? Не засоряйте эфир. Автору вопроса -- возможно, схемы помогут, разделите объекты БД на логические группы, поместите их в разные схемы и управляйте правами на уровне схем. Ключевые слова: CREATE SCHEMA, SET search_path TO ... > >> Почему вопрос возник: >> Дело в том что у нас есть база, и у нас в ней "ноу–хау" лежат, в том >> числе им является структура базы, схема взаимодействия триггеров и >> т.п. > > Превед проприетарщекам :-) Гыыыыы. Что за чушь - 2.
Денис wrote: > Насколько я понимаю, на сегодняшний день нельзя в postgresql (и в > других sql db) скрыть часть схемы для пользователей? То есть, сделать > так, чтобы нельзя было увидеть структуру таблиц, функций, кроме тех > которые явно разрешено? > > Вопрос: > почему? есть какая-то принципиальная проблема? Видимо, потому что бороться с промышленным шпионажем техническими средствами бесполезно. Эффективнее делать это административными мерами. Например, не пускать козлов в огород (dblink и т.п.). > Почему вопрос возник: > Дело в том что у нас есть база, и у нас в ней "ноу–хау" лежат, в том > числе им является структура базы, схема взаимодействия триггеров и > т.п. Но нужда заставляет дать пользователям доступ прямо в базу к > определённым записям... > > Сейчас я рассматриваю варианты решения проблемы с помощью dblink > из другой базы, куда будут подключаться пользователи или > sqlrelay-фильтра. Но как то грустны эти варианты, если честно... Перепишите триггеры на Си :-)
А может сделать простенький API?
И разрешить в нем только то, что разрешено.
--
WBR
--
WBR
2009/9/11 Денис <denis.feklushkin@gmail.com>
Дело в том что у нас есть база, и у нас в ней "ноу–хау" лежат, в том
числе им является структура базы, схема взаимодействия триггеров и
т.п. Но нужда заставляет дать пользователям доступ прямо в базу к
определённым записям...
On Sun, 13 Sep 2009 12:30:23 +0400 "Andrey N. Oktyabrski" <ano@bestmx.ru> wrote: > Денис wrote: > > Насколько я понимаю, на сегодняшний день нельзя в postgresql (и в > > других sql db) скрыть часть схемы для пользователей? То есть, > > сделать так, чтобы нельзя было увидеть структуру таблиц, функций, > > кроме тех которые явно разрешено? > > > > Вопрос: > > почему? есть какая-то принципиальная проблема? > Видимо, потому что бороться с промышленным шпионажем техническими > средствами бесполезно. Эффективнее делать это административными > мерами. Например, не пускать козлов в огород (dblink и т.п.). Смотря что называть огородом. Данные ведь ролями прекрасно защищаются, почему бы не защищать и "код"?
Attachment
On Sun, 13 Sep 2009 16:10:39 +0400 dewil <dewil.ru@gmail.com> wrote: > А может сделать простенький API?И разрешить в нем только то, что > разрешено. > ну да, через dblink тот же. пробовал - даже простенький API оказывается не так прост > -- > WBR > > 2009/9/11 Денис <denis.feklushkin@gmail.com> > > > Дело в том что у нас есть база, и у нас в ней "ноу–хау" лежат, в том > > числе им является структура базы, схема взаимодействия триггеров и > > т.п. Но нужда заставляет дать пользователям доступ прямо в базу к > > определённым записям... > >