Мне интересно, какова лучшая стратегия использования разрешений на вставку только для postgres db с Peewee. Я хотел бы это, чтобы быть уверенным, что конкретный пользователь c не может прочитать какие-либо данные из базы данных.
Я предоставил INSERT разрешения для моей таблицы ' test ', в postgres. Но я столкнулся с проблемой, что когда я пытаюсь сохранить новые строки с чем-то вроде:
thing = Test(value=1)
thing.save()
sql на самом деле содержит предложение RETURNING, которому нужно больше разрешений (а именно SELECT), чем просто вставить :
INSERT INTO "test" ("value") VALUES (1) RETURNING "test"."id"
Похоже, то же самое sql генерируется, когда я пытаюсь также использовать query = test.insert(value=1)' query.execute()
.
При взгляде вокруг кажется, что вы Вам нужно либо предоставить привилегии SELECT, либо использовать функцию exoti c, такую как «защита на уровне строк» в Postgres. Есть ли способ go об этом с peewee из коробки? Или другое предложение о том, как добавлять новые строки с правами доступа только для записи?