Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Можно-ли запретить вносить изменения в данные на уровне постгреса? / 5 сообщений из 5, страница 1 из 1
19.10.2004, 10:47
    #32743910
vadim_123
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно-ли запретить вносить изменения в данные на уровне постгреса?
.
...
Рейтинг: 0 / 0
19.10.2004, 12:13
    #32744190
Кувалдин Роман
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно-ли запретить вносить изменения в данные на уровне постгреса?
Да, для каждого пользователя можно настроить права доступа к таблицам.

Это то, что ты ищешь?
...
Рейтинг: 0 / 0
19.10.2004, 15:07
    #32744575
vadim_123
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно-ли запретить вносить изменения в данные на уровне постгреса?
Совсем не то.
Мне надо, чтобы данные нельзя было изменить с помощью update. То есть нужна некая защита от случайных или не случайных действий.
Можно сделать поле 'edit' в каждую таблицу, и в триггере, если оно, например, true, всегда возвращать old. Но это не даёт полной гарантии от того, что данные не будут изменены.
Есть-ли возможность через системные таблицы постгреса сделать что-то вроде read-only на мои данные?
...
Рейтинг: 0 / 0
19.10.2004, 18:46
    #32745204
Shweik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно-ли запретить вносить изменения в данные на уровне постгреса?
Апдейт таблицы запретить просто REVOKE UPDATE on "маятиблица" from "кретинодж"
Можно использовать просмотр- они по умолчанию не позволяют изменять данные.
И последнее - почитай внимательно про правила (RULES ON UPDATE).
...
Рейтинг: 0 / 0
26.10.2004, 12:45
    #32754630
strizh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно-ли запретить вносить изменения в данные на уровне постгреса?
Я практически во всех таблицах ввожу столбец с именем пользователя, кто внес строчку (столбик типа MUSER varchar(20) not null default getpgusername()), а потом для каждой таблицы создаю правила на delete и update.
Например
create rule CU1 as on update to C_NOMENCLATOR where name(old.MUSER) <> getpgusername() and getpgusername() <> 'postgres' do instead nothing;
дает, что запись может поменять только тот, кто ее создал, и юзер с именем postgres (админ базы)
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Можно-ли запретить вносить изменения в данные на уровне постгреса? / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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