Форум: "Базы";
Текущий архив: 2002.03.14;
Скачать: [xml.tar.bz2];
ВнизУправление доступом к базе данных... Найти похожие ветки
← →
Malder (2002-02-16 12:37) [0]Подскажите, как управлять доступом к базе данных ? То есть, допустим, есть некоторые записи, каждая запись - информация о клиенте. Для каждой определенной записи есть менеджер, который ответственен за эту запись (за данного клиента). Как сделать, чтоб под своим логином/паролем менеджер мог посмотреть только свои записи, то есть записи, где поле Manager="Ivan" ? Или мог посмотреть/редактировать свои записи, а чужие только смотреть ?
Естесственно, запрещение/разрешение доступа должно определяться сервером, а не строкой SQL-запроса: SELECT from DEP where Manager=Ivan.
← →
Malder (2002-02-16 13:39) [1]Скажите хоть что нибудь. Если чего непонятно, что я хочу - скажите. Постараюсь обьяснить поподробнее...
← →
Havez (2002-02-16 15:56) [2]Вряд-ли доступ к записям можно организовать через сервер.
Лучше убрать гранты для таблицы и создать просмотр как раз с тем текстом что ты привёл, и дать грант к нему.
where dep.Manager = USER
← →
drpass (2002-02-16 19:52) [3]Почему же нельзя?
Просто нужно запретить менеджерам доступ к таблице, и для каждого из них создать представление (create view) по их данным.
← →
Fay (2002-02-17 02:33) [4]For IB:
create generator t1_g;
create table t1(
t1_id integer not null,
t1_name varchar(32) not null collate pxw_cyrl,
t1_owner varchar(16) default user not null ,
constraint pk_t1 primary key(t1_id)
);
set term ^;
create trigger t1_bi for t1
before insert
as
begin
new.t1_id=gen_id(t1_g, 1);
end
^
set term ;^
create view t1_v
as
select
t1_id,
t1_name
from t1
where t1_owner=user;
grant all on t1_v to public;
← →
Fay (2002-02-17 02:36) [5]2 Havez ©
Прошу прощения, ухитрился не заметить Вашего ответа.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.03.14;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.007 c