PostgreSQL - права доступа

Ответить
bolotoved
Гуру
Сообщения: 920
Зарегистрирован: 30 дек 2008, 14:11
Репутация: 236
Откуда: Ханты-Мансийск
Контактная информация:

PostgreSQL - права доступа

Сообщение bolotoved » 19 фев 2013, 15:21

Можно ли в PostgreSQL настроить права пользователей таким образом, чтобы каждый пользователь мог редактировать только те записи, которые создал сам?

Аватара пользователя
novia
Гуру
Сообщения: 2261
Зарегистрирован: 29 апр 2011, 15:06
Репутация: 489
Откуда: Тель-Авив

Re: PostgreSQL - права доступа

Сообщение novia » 19 фев 2013, 15:25

какое клиентское приложение?
например, в ArcSDE 10.1 такая функция есть (теперь увидел название раздела)
понравилось? жми палец вверх :!:

bolotoved
Гуру
Сообщения: 920
Зарегистрирован: 30 дек 2008, 14:11
Репутация: 236
Откуда: Ханты-Мансийск
Контактная информация:

Re: PostgreSQL - права доступа

Сообщение bolotoved » 19 фев 2013, 15:35

novia писал(а):какое клиентское приложение?
А это не в самой PostgreSQL настраивается? Я в этом деле совсем чайник.

Аватара пользователя
dab
Гуру
Сообщения: 671
Зарегистрирован: 16 дек 2011, 20:02
Репутация: 170
Ваше звание: Гуру
Откуда: Москва
Контактная информация:

Re: PostgreSQL - права доступа

Сообщение dab » 19 фев 2013, 15:59

1. Здесь рецепт http://www.opennet.ru/tips/info/1420.shtml
2. Другой вариант - сделать в каждой таблице служебное поле user_name со значением по умолчанию current_user. Сделать триггеры на delete и update с проверкой совпадения текущего пользователя полю user_name. Если не совпадают - не производить действий с таблицами.
Плюс можно делать из клиента запрос данных созданных конкретным пользователем.

Аватара пользователя
novia
Гуру
Сообщения: 2261
Зарегистрирован: 29 апр 2011, 15:06
Репутация: 489
Откуда: Тель-Авив

Re: PostgreSQL - права доступа

Сообщение novia » 19 фев 2013, 16:12

bolotoved писал(а):
novia писал(а):какое клиентское приложение?
А это не в самой PostgreSQL настраивается? Я в этом деле совсем чайник.
в самой)
dab предложил валидацию на уровне триггеров, но было бы неплохо, чтобы не только база выдавала запрет транзакции, а еще и клиентское приложение в принципе не пыталось отправлять сообщения на обновление, в случае, когда объект не принадлежит текущему пользователю.
в экосистеме ArcGIS ownership-based editing поддерживается как со стороны базы, так и со стороны клиента.
понравилось? жми палец вверх :!:

Аватара пользователя
Дмитрий Барышников
Гуру
Сообщения: 2572
Зарегистрирован: 17 ноя 2009, 19:17
Репутация: 261
Откуда: Москва

Re: PostgreSQL - права доступа

Сообщение Дмитрий Барышников » 19 фев 2013, 16:19

bolotoved писал(а): А это не в самой PostgreSQL настраивается? Я в этом деле совсем чайник.
В самой базе есть возможность установки прав на поля (колонки). Установка прав на отдельные записи нет. Возможно, это можно сделать через View.

bolotoved
Гуру
Сообщения: 920
Зарегистрирован: 30 дек 2008, 14:11
Репутация: 236
Откуда: Ханты-Мансийск
Контактная информация:

Re: PostgreSQL - права доступа

Сообщение bolotoved » 19 фев 2013, 16:32

dab писал(а):1. Здесь рецепт http://www.opennet.ru/tips/info/1420.shtml
2. Другой вариант - сделать в каждой таблице служебное поле user_name со значением по умолчанию current_user. Сделать триггеры на delete и update с проверкой совпадения текущего пользователя полю user_name. Если не совпадают - не производить действий с таблицами.
Плюс можно делать из клиента запрос данных созданных конкретным пользователем.
Похоже на то, что надо.
Дмитрий Барышников писал(а):Возможно, это можно сделать через View.
Посмотрю.

Аватара пользователя
Максим Дубинин
MindingMyOwnBusiness
Сообщения: 9128
Зарегистрирован: 06 окт 2003, 20:20
Репутация: 747
Ваше звание: NextGIS
Откуда: Москва
Контактная информация:

Re: PostgreSQL - права доступа

Сообщение Максим Дубинин » 19 фев 2013, 16:47

пристегивайтесь, турбулентность прямо по курсу

bolotoved
Гуру
Сообщения: 920
Зарегистрирован: 30 дек 2008, 14:11
Репутация: 236
Откуда: Ханты-Мансийск
Контактная информация:

Re: PostgreSQL - права доступа

Сообщение bolotoved » 19 фев 2013, 17:30

Максим Дубинин писал(а):http://gis-lab.info/qa/postgis-row-level.html
Ничто не ново под луною...

Ответить

Вернуться в «PostGIS/PostgreSQL»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя