Еще нет никакого руководства использования этим тегом …!
Руководство использования, также известное как тег выборка Wiki, является короткой аннотацией, которая описывает, когда и почему тег должен использоваться на этом сайте конкретно.
Возможности POSIX являются способом разделить полные полномочия суперпользователя на меньшие разделы полномочий. Используйте этот тег для вопросов на управлении и использовании возможностей.
Возможности POSIX являются способом разделить полные полномочия суперпользователя на меньшие разделы полномочий. В то время как суперпользователь всесилен, это богатство полномочий обычно не необходимо для отдельных задач.
Под Unix и связанными операционными системами суперпользователь (обычно называемый root
) всесильно. Для определенных задач нужны некоторые полномочия суперпользователя. Например, /bin/ping
нуждается в полномочии считать и записать необработанные пакеты IP. Обычно только суперпользователь может сделать это. Для обычных пользователей для выполнения /bin/ping
, программный файл принадлежит root
и имеет набор битов UID набора. Это даст /bin/ping
полные полномочия суперпользователя. Таким образом в дополнение к контакту с необработанными пакетами IP процесс мог установить новое системное программное обеспечение, уничтожить другие процессы и т.д. Другим примером является программное обеспечение для резервного копирования, которое просто должно смочь считать все файлы. Чтобы сделать это, это традиционно выполняется с полномочиями суперпользователя.
Этот бескомпромиссный подход когда-либо притягивал критику, потому что это нарушает принцип наименьшего количества полномочия – программы должны иметь только полномочия, они должны функционировать. Но присвоение полных полномочий суперпользователя к большинству программ является излишеством. Риск состоит в том что, если такая программа поставлена под угрозу (например, некоторым переполнением буфера с инжекцией кода оболочки), то целая система поставлена под угрозу.
Возможности POSIX являются шагом к принципу наименьшего-количества-полномочия. Возможности могут быть присвоены программам во многом как бит UID набора если поддержки файловой системы это. Инструменты для изменения возможностей setcap
и getcap
. Например, /bin/ping
просто нуждается в возможности CAP_NET_RAW
. Для резервной программы просто нужна возможность CAP_DAC_READ_SEARCH
. Поставленные под угрозу процессы с ограниченными возможностями не могут причинить много вреда.
По крайней мере, это - общее представление. На практике понятие имеет некоторые дефекты, см. CAP_SYS_ADMIN: новый корень. На самом деле оказывается, что, если процесс имеет определенные возможности, он мог бы поднять свои полномочия до полных полномочий суперпользователя, посмотрите Ложные Границы и Выполнение Произвольного кода.