2010-10-24 2 views
2

Из любопытства. Я думал о различных моделях доступа, которые часто встречаются в * nix, и о тех, которые видны в системах на основе nt-n.Проверка наличия у пользователя прав для файла в * nix

Есть ли какая-либо команда или api, чтобы проверить, является ли файл доступным для чтения, исполняемым и т. Д. Для пользователя, отличного от зарегистрированного пользователя. Например, например: http://www.php.net/manual/en/function.is-executable.php или Checking File Permissions in Linux with Python Но для любого пользователя, имеющего разрешение на просмотр.

Есть ли причина, почему такая функция не должна быть найдена?

+0

Это не означает, что голосование закрывается, это всего лишь указатель на то, что может быть несколько сайтов, более конкретно полезных для Q & A для систем * nix: [Ask Ubuntu] (http://askubuntu.com/) (явно нацеленный на Ubuntu, но по-прежнему значимый для Nix по большей части) и [Unix Stackexchange (для Linux, FreeBSD и других Unix-подобных ОС)] (http://unix.stackexchange.com/). –

ответ

0

В * nix можно ли определить разрешения пользователя на файл по 2 атрибутам: разрешениям на мир и группу в файле. Если мировые разрешения установлены для r, w или x, то, конечно, любой пользователь будет иметь эти права на этот файл. Аналогично, если пользователь является членом группы, которая указана в качестве владельца группы файла, и эти разрешения установлены на уровне группы, тогда снова пользователь будет иметь это право в файле. Конечно, вы должны быть уверены, что у пользователя есть соответствующие права на все каталоги в абсолютном пути файла. И, конечно же, root может получить доступ к любому файлу независимо от разрешений или владельцев.

Таким образом, для любого конкретного файла относительно легко определить, имеет ли конкретный пользователь права на этот файл, просматривая разрешения на доступ к файлам и членство в группе пользователя.