Я пытаюсь настроить PostgreSQL для локального использования на своем рабочем столе, и я столкнулся со странной проблемой. Кажется, я не могу найти простой способ сделать кластер базы данных (который является просто каталогом) доступным только пользователю postgres и полностью доступным для него. Другими словами, я хочу, чтобы postgres (пользователь) имел полный доступ к каталогу, но все остальные просто могли прочитать, что в нем находится (чтобы можно было копировать файлы).

Я создал пользователя 'postgres', удалил его из всех групп и отказал в праве на запись в группу 'Users'. Однако, когда я пытаюсь инициализировать базу данных, пользователь postgres, кажется, не может выполнить запись в каталог - как только я удаляю запрет записи из «Users», он работает нормально.

Я знаю, что мог бы сделать что-то вроде запрета на запись для моего пользователя по умолчанию (я сам в основном), но этот пользователь принадлежит «Администраторам», а не «Пользователям». Поскольку очевидно, что все пользователи принадлежат к категории «Пользователи» неявно, и отказ имеет приоритет, я боюсь, что я, как единственный администратор, могу отказать себе в возможности изменить этот каталог в любой момент в будущем.

Я видел некоторые другие инструкции, которые касаются групповой политики и т.д., Но они не кажутся достаточно конкретными, и процесс кажется слишком сложным, что заставляет меня думать, что я неправильно понимаю разрешения NTFS/Windows. Это чувство еще более усугубляется тем, что я могу думать о том, как сделать это в Linux за 5 минут и просто. Я даже не уверен, возможно ли это на данный момент.

Как бы я дал конкретному пользователю единоличный доступ к каталогу, а никто другой?

редактировать: я думаю, я могу свести этот вопрос к более простому: есть ли способ запретить что-либо для пользователя, который принадлежит к группе администраторов? И если бы вы сделали это, вы бы смогли восстановить разрешения до того, что было раньше?

1 ответ1

1

Вам не нужно ни отказывать в разрешениях, ни удалять postgres из группы Users . Эта группа должна иметь доступ для чтения к каталогу, но не иметь права записи. Обратите внимание, что это не то же самое, что отрицание, вам просто нужно убедиться, что каталог кластера не наследует никаких разрешений от своего родителя, а затем вручную назначить ему разрешения на чтение для группы « Users ». Затем назначьте ему права на запись только для пользователя postgres , и все готово.

Изменить: если приведенное выше объяснение недостаточно ясно, вот скриншот и статья.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .