Статьи

Публикации вне разделов


Документация по Perl, CGI и др.


Права доступа это атрибуты файла или каталога, указывающие серверу кто и что(читать, писать, испольнять) может делать с соответствующим файлом или каталогом. Так как большинство серверов работают на базе unix-совместимых систем, то будем рассматривать установку прав доступа unix-типа.

Документация по Perl, CGI и др.
Права доступа


Права доступа это атрибуты файла или каталога, указывающие серверу кто и что(читать, писать, испольнять) может делать с соответствующим файлом или каталогом. Так как большинство серверов работают на базе unix-совместимых систем, то будем рассматривать установку прав доступа unix-типа.

Первое, кто получает доступ к файлу: "user"(владелец файла), "group"(член той же группы, к которой принадлежит владелец файла) или "world"(все остальные). Когда вы подключаетесь к серверу по FTP, вы входите под своим именем пользователя. Вы закачиваете файлы и создаете каталоги под своим именем. Другие пользователи, которые могут подключиться к серверу по FTP будут относиться к той же группе, что и вы. Когда человек попадает на вашу веб-страницу через свой броузер, сервер рассматривает его как пользователя типа "world".

Второе, что конкретный пользователь(USER, GROUP, WORLD) может делать с файлом. С файлом или каталогом можно выполнить следующие действия: прочитать, записать в него, выполнить. Что касается каталога, то для того чобы просмотреть его содержимое он должен быть исполняемым для пользователя, чтобы можно было войти в каталог, а также иметь атрибут чтения, для просмотра содержимого каталога. Если необходимо создать новый файл или каталог в существующем каталоге, то он должен иметь атрибут разрешения записи в него. Для приложений или CGI скриптов необходимо устанавливать разрешение на чтение и на выполнение, чтобы он мог быть запущен.


Как это работает

Существует три права доступа и три группы, для которых эти права устанавливаются. Смешивая все возможные комбинации, мы определяем все множество прав, доступных для данного файла или каталога. Говоря упрощенно, множество прав задается в виде трех цифр. Первая задает права доступа для категории "user". Вторая - для категории "group". Ну и третья - для категории "world". Эти числа получаются путем суммирования следующих значений:

4 = read (право на чтение)
2 = write (право на запись)
1 = execute (право на выполнение)
Используя эти числа устанавливаются права доступа для категорий user, group или world, на возможные действия: чтение, запись и выполнение. Простым сложением указанных выше чисел вы получаете права даступа на совокупность действий. Например, 3(2+1) разрешает запись и выполнение файла(каталога); 5(4+1) разрешает чтение и выполнение; 6(4+2) разрешает чтение и запись; 7(4+2+1) устанавливает право чтения, записи и выполнения.

7 = read, write & execute
6 = read & write
5 = read & execute
4 = read
3 = write & execute
2 = write
1 = execute
Эти числа используются для задания 3-х цифрового кода прав доступа к файлу. Первая цифра в этом коде представляет права доступа к файлу для категории user, вторая - group и третья world.
Например, вы хотите установить следующие права доступа: user - read, write, execute; group - read, execute; world - read, execute. Получаем 755.

Для установки 3-х цифрового кода прав доступа к файлу используется команда chmod. Но многие современные FTP менеджеры позволяют упростить процедуру установки прав доступа. Она реализуется прсотановкой "птичек" в поле checkbox'ов 3х3([user,group,world]x[read,write,execute]) или простым введением 3-х цифрового кода.

Ниже приведена таблица с типичными установками прав доступа для большинства хостеров:


Права доступа Команда(код) Описание
U G W  
r w x r - x r - x [site] chmod 755  Для директорий, CGI скриптов и других исполняемых файлов
r w - r - - r - - [site] chmod 644  Для обычных файлов
r w - - - - - - - [site] chmod 600  Скрыть файлы от всех кроме вас и ваших скриптов
U = user; G = group; W = world
r = Read; w = Write; x = Execute; - = Нет права

Команда "chmod" имеет два режима: Абсолютный(цифровой) и Символьный режим. Команда "chmod", используемая в Unix, или команда "site chmod", используемая в некоторых FTP менеджерах(напр. FTP Explorer), могут использоваться в обоих режимах.

При Абсолютном(цифровом) режиме используется описанный выше 3-х цифровой код прав доступа. Символьный режим использует буквенный формат для установки прав доступа. Здесь используются буквы "r", "w" и "x" для read, write и execute соответственно. А также "u", "g", "o" и "a" для user, group, other (world), и all(все[не используется]) соответственно.
Например: 755 = chmod u=rwx,go=rx filename; 644 = chmod u=rw,go=r filename; 600 = chmod u=rw,go= filename; 444 = chmod a=r filename
  
  
 


Дата публикации: 2006-07-05
Прочитано: 3695 раз
[ Назад | Начало | Наверх ]
Нет комментариев. Почему бы Вам не оставить свой?
Вы не можете отправить комментарий анонимно, пожалуйста зарегистрируйтесь.