-9 / 1 / 0
Регистрация: 25.04.2015
Сообщений: 101
|
|
1 | |
GRANT INSERT10.04.2018, 14:40. Показов 1218. Ответов 4
Метки нет (Все метки)
Добрый день! Скажите, пожалуйста, в чем заключается магия?
Если дать разрешение пользователю на UPDATE, DELETE или просто вместо этого написать ALL, то все изменяется и удаляется. Но, если дать INSERT то нет разрешения добавлять, что за долбанная *****. Замечание: Пользователь является NOSUPERUSER, но если ему дать суперпользователя, то можно делать INSERT, ну и UPDATE, DELETE, а они не нужны. Т.е. нужно строго разграничить доступ, что одни пользователи могут ТОЛЬКО ДОБАВЛЯТЬ, а другие изменять и т.д.
0
|
10.04.2018, 14:40 | |
Ответы с готовыми решениями:
4
INSERT, вложенный в INSERT grant-ы непонятки с оператором GRANT GRANT EXECUTE ON . TO @User |
1241 / 960 / 379
Регистрация: 02.09.2012
Сообщений: 2,936
|
|
10.04.2018, 16:24 | 2 |
Где-то вы ошиблись с добавлением ролей и раздачей привилегий. Не должно быть такого.
Покажите подробности, кто овнер таблицы и какие сейчас разрешения выставлены (в форме ACL role=xxxx\role). И у вас случайно пользователь не овнер таблицы?? Помним, что овнеру таблицы по умолчанию (при создании) даны все права на таблицу.
0
|
-9 / 1 / 0
Регистрация: 25.04.2015
Сообщений: 101
|
|
10.04.2018, 18:37 [ТС] | 3 |
CREATE ROLE manager LOGIN
ENCRYPTED PASSWORD 'md56083c4591010db26925a99d37419954e' NOSUPERUSER NOINHERIT NOCREATEDB NOCREATEROLE NOREPLICATION; ACL {postgres=arwdDxt/postgres,manager=a*r*w*d*/postgres,director=a*r*w*d*D*x*t*/postgres,user1=ar/postgres} А овнер у таблицы postgres, а захожу и пробую под другими пользователями. Так на UPDATE, DELETE работает, а на INSERT нет. Добавлено через 3 минуты Вот бы еще знать расшифровку - arwdDxt. И почему там звездочки...
0
|
1241 / 960 / 379
Регистрация: 02.09.2012
Сообщений: 2,936
|
|
10.04.2018, 23:36 | 4 |
С расшифровкой проблем нет. Вот (в конце) : https://www.postgresql.org/doc... grant.html
Звездочка означает, что вы делали WITH GRANT OPTION, когда назначали права (то есть назначено право назначать право такого-то доступа). Интересует другое. Вы пишите Под другими какими?? У вас manager, director и user1 - это групповые роли?? Пользователи этих групп наследуют привилегии??
0
|
-9 / 1 / 0
Регистрация: 25.04.2015
Сообщений: 101
|
|
11.04.2018, 20:35 [ТС] | 5 |
Да. Под пользователями director и manager. User1 то пробный, его уже удалил. Это не групповые, потому что они находятся в роли входа. Там же в свойствах указано LOGIN.
Добавлено через 3 минуты Пользователи этих групп не наследуют привилегии и логин - роль входа: CREATE ROLE manager LOGIN ENCRYPTED PASSWORD 'md56083c4591010db26925a99d37419954e' NOSUPERUSER NOINHERIT NOCREATEDB NOCREATEROLE NOREPLICATION; Добавлено через 2 часа 52 минуты Разобрался! Оказывается последовательность не давала доступ, т.к. в таблице первичный ключ - INT SERIAL NOT NULL. Потом я и для последовательности дал доступ и все заинсертило.
0
|
11.04.2018, 20:35 | |
11.04.2018, 20:35 | |
Помогаю со студенческими работами здесь
5
Grant и create session Такой ли any полученный grant select any dictonary Установка привилегий (grant) для роли Как дать права на все объекты БД Firebird (Grant ALL to ALL) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |