Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / на счет разграничения привилегии / 11 сообщений из 11, страница 1 из 1
10.02.2015, 01:59
    #38875282
Delphi159
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
на счет разграничения привилегии
Знаем, что привилегий предоставляется объектам базы данных- пользователям, ролям, хранимым процедурам, триггерам и представлениям.
Есть складская программа, где прибил считается по запросу,но у оператора не могу лишить доступа к этому запросу посколько в запросе участие принимают те таблицы, доступ к которым обязателен для работы оператора на других формах. Что можно придумать? Один вариант- написать ХП и лишить привилегии к этому ХП операторам. Второй вариант-Если роль "ааа"(роль операторов) тогда ничего не сделать и не выводить в DBGrid. Можете что-нибудь другое предлагать? Заранее спасибо!
...
Рейтинг: 0 / 0
10.02.2015, 02:12
    #38875284
Delphi159
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
на счет разграничения привилегии
Delphi159 не могу лишить доступа к этому запросу
Хотел сказать, не могу лишить доступа к таблицам этого запроса
...
Рейтинг: 0 / 0
10.02.2015, 10:06
    #38875475
Fr0sT-Brutal
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
на счет разграничения привилегии
Если у оператора и так есть все данные для расчета прибыли, смысл ограничивать ему доступ чисто декоративный, а значит, можно решить на уровне клиентского приложения. Потому что все равно никто не сможет помешать ему подсоединиться к базе напрямую и выполнить любой запрос над доступными таблицами.

Можно пойти другим путем и ограничить набор полей, доступных оператору, - через view или ХП.
...
Рейтинг: 0 / 0
10.02.2015, 10:08
    #38875476
Fr0sT-Brutal
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
на счет разграничения привилегии
Также можно раздавать привилегии на уровне столбцов.
...
Рейтинг: 0 / 0
10.02.2015, 20:01
    #38876327
Delphi159
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
на счет разграничения привилегии
Fr0sT-BrutalТакже можно раздавать привилегии на уровне столбцов.
А как? с помощью ACL? то есть создать таблицу objects, где вставить объекты, на которые пользователь имеет права и в этой таблице не будет тот столбец?
...
Рейтинг: 0 / 0
10.02.2015, 21:36
    #38876378
Ivan_Pisarevsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
на счет разграничения привилегии
Delphi159А как?При помощи view, как впрочем и row level.
...
Рейтинг: 0 / 0
11.02.2015, 00:48
    #38876458
Delphi159
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
на счет разграничения привилегии
Ivan_Pisarevsky , я имел ввиду: при разграничении прав доступа по ACL если можно в таблице objects вводить поле таблицы как объект права доступа и если пользователе дал права на чтение этого поля, тогда выводить другой запрос(где видно это поле), а если нет- то без неё? Или под объектом подразумевается только объекты базы данных- пользователи, таблицы,роли, хранимые процедуры, триггеры и представления?
...
Рейтинг: 0 / 0
11.02.2015, 01:32
    #38876478
Delphi159
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
на счет разграничения привилегии
Ivan_PisarevskyDelphi159А как?При помощи view, как впрочем и row level.

Или имели ввиду Field level security? http://www.firebirdfaq.org/faq94/

Я знал,что row level- разграничение прав доступа на уровне записи! Сам слово говорит-row. Можете дать ссылку как создать RLS?
...
Рейтинг: 0 / 0
11.02.2015, 08:21
    #38876541
Ivan_Pisarevsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
на счет разграничения привилегии
Delphi159Или имели ввиду Field level security?и column level тоже.
Delphi159если пользователе дал права на чтение этого поля, тогда выводить другой запрос(где видно это поле), а если нет- то без неё?Это и есть вью.
Delphi159Можете дать ссылку как создать RLS?навскижку не помню, тут все сильно зависит от бизнес логики и твоих вводных.

простейший пример это таблица с полем LOGIN заполненное current_user-ом и вью, с кляузой "where LOGIN = current_user", каждый увидит только свое. Для чего-то более интересного надо заводлить таблички с правами, обычно древовидной структуры и брать права оттуда.
...
Рейтинг: 0 / 0
11.02.2015, 10:40
    #38876665
Fr0sT-Brutal
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
на счет разграничения привилегии
Да, просто закрыть доступ - через grant на поля, для прозрачной фильтрации - view/SP
...
Рейтинг: 0 / 0
11.02.2015, 13:03
    #38876901
Delphi159
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
на счет разграничения привилегии
Ivan_Pisarevsky, , а на 17247538 можете ответить? То есть:
при разграничении прав доступа по ACL можно в таблице objects вводить поле таблицы как объект права доступа? Или под объектом подразумевается только объекты базы данных- пользователи, таблицы,роли, хранимые процедуры, триггеры и представления?
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / на счет разграничения привилегии / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]