Поскольку у вас есть строгие требования к разрешениям, вы можете реализовать структуру, аналогичную гранулярному подходу UNIX к разрешениям для файлов.Каждый файл или папка должны иметь владельца, группу и строку разрешений, которая выглядит как «755».
Первая позиция строки разрешений относится к владельцу файла или каталога.Число 4 обозначает привилегии чтения, 2 обозначает привилегии записи, а 1 обозначает привилегии выполнения.Разрешение является кумулятивным, поэтому разрешение 7 в первом столбце (4 + 2 + 1) означает, что владелец имеет права на чтение, запись и выполнение.
Второй столбец относится к группе.В этом случае члены группы могут читать (4) и выполнять (1) (4 + 1 = 5).
Третий столбец относится ко всем, кто не является владельцем или членом группы.Эта позиция известна как «мир» или «другой».В этом примере «другие» пользователи также имеют разрешения на чтение (4) и выполнение (1).
После создания столбцов владельца, группы и разрешений для каждого файла / каталога вам потребуется создать «группы»'table и таблица для сопоставления пользователей с группами (' user_groups ').Затем назначьте каждого пользователя одной или нескольким группам и назначьте права доступа владельца, группы и «другие» для каждой папки (и файла, если необходимо).
Для получения дополнительной информации о файловых системах Unix см. thisучебник .