Управление доступом к системе

При включении пользователя в число абонентов ему выдается регистрационное имя (идентификатор) для входа в систему и пароль, который служит для подтверждения идентификатора пользователя. Вводимые пользователем символы пароля не отображаются на экране терминала. В отдельных версиях ОС UNIX, помимо идентификатора и пароля, требуется ввод номера телефона, с которого выполняется подключение к системе. Администратор системы и пользователь могут изменить пароль командой passwd. При вводе этой команды ОС запрашивает ввод текущего пароля, а затем требует ввести новый пароль. Если предложенный пароль слишком прост, ОС может попросить ввести другой. Если предложенный пароль удовлетворителен, ОС просит ввести его снова с тем, чтобы убедиться в корректности ввода пароля. Пользователи, которым разрешен вход в систему, перечислены в учетном файле пользователей /cts/passwd. Этот текстовый файл содержит следующие данные: имя пользователя, зашифрованный пароль, идентификатор пользовате­ля, идентификатор группы, начальный текущий каталог и имя исполняемого файла, используемого в качестве интерпретатора команд. Пароль шифруется, как правило, с использованием DES -алгоритма [4].

Управление доступом к данным.

Операционная система UNIX поддержива­ет для любого файла комплекс характеристик, определяющих санкционированность доступа, тип файла, его размер и точное местоположение на диске. При каж­дом обращении к файлу система проверяет право пользоваться им. Операционная система UNIX допускает выполнение трех типов операций над файлами: чтение, запись и выполнение. Чтениефайла означает, что доступно его содержимое, а за­письчто возможны изменения содержимого файла. Выполнениеприводит либо к загрузке файла в ОП, либо к выполнению содержащихся в файле команд систем­ного монитора Shell. Разрешение на выполнение каталога означает, что в нем до­пустим поиск с целью формирования полного имени на пути к файлу.

Любой из файлов в ОС UNIX имеет определенного владельца и привязан к не­которой группе. Файл наследует их от процесса, создавшего файл. Пользователь и группа, идентификаторы которых связаны с файлом, считаются его владельцами. Идентификаторы пользователя и группы, связанные с процессом, определя­ют его права при доступе к файлам. По отношению к конкретному файлу все процессы делятся на три категории:

1. владелец файла (процессы, имеющие идентификатор пользователя, сов­падающий с идентификатором владельца файла);

2. члены группы владельца файла (процессы, имеющие идентификатор груп­пы, совпадающий с идентификатором группы, которой принадлежит файл);

3. прочие (процессы, не попавшие в первые две категории). Владелец фай­ла обладает одними привилегиями на доступ к нему, члены группы, в которую входит файл, другими, все остальные пользователи - третьими.

Каждый файл содержит код защиты, который присваивается файлу при его соз­дании. Код защиты располагается в индексном дескрипторе файла и содержит десять символов, причем первый символ определяет тип файла, а последующие девять - право на доступ к нему. Три вида операций (чтение, за­пись и выполнение) и три категории (уровни привилегий на доступ: владельцев, групп и прочих пользователей) дают в совокупности девять возможных вариан­тов разрешений или запретов на доступ к файлу. Первые три символа определя­ют возможности чтения (r), записи (w) и выполнения (c) на уровне владельца, следующие три - на уровне группы, в которую входит владелец, и последние три - на уровне остальных пользователей. Наличие символов r, w и с указывает на соответствующее разрешение.

Если процесс требует доступа к файлу, то сначала определяется категория, в которую по отношению к этому файлу он попадает. Затем из кода защиты вы­бираются те три символа, которые соответствуют данной категории, и выполня­ется проверка: разрешен ли процессу требуемый доступ. Если доступ не разре­шен, системный вызов, посредством которого процесс сделал запрос на доступ, отвергается ядром ОС.

По соглашению, принятому в ОС UNIX, привилегированный пользователь имеет идентификатор, равный нулю. Процесс, с которым связан нулевой иден­тификатор пользователя, считается привилегированным. Независимо от кода защиты файла привилегированный процесс имеет право доступа к файлу для чтения и записи. Если в коде защиты хотя бы одной категории пользователей (процессов) есть разрешение на выполнение файла, привилегированный про­цесс тоже имеет право выполнять этот файл.

С помощью специальных команд владелец файла (и привилегированный поль­зователь) может изменять распределение привилегий. Команда Change mode позво­ляет изменить код защиты, команда Change owner меняет право на владение фай­лом, а команда Change group - принадлежность к той или иной группе. Пользова­тель может изменять режимы доступа только для тех файлов, которыми он владеет.

Защита хранимых данных. Для защиты хранимых данных в составе ОС UNIX имеется утилита crypt, которая читает данные со стандартного ввода, шифрует их и направляет на стандартный вывод. Шифрование применяется при необходимости предоставления абсолютного права владения файлом. За­шифрованный файл можно прочитать лишь по предъявлении пароля.

Восстановление файловой системы. Операционная система UNIX поддержи­вает три основных набора утилит копирования программы volcopy/labelit, dump/restor и cpio. Программа volcopy целиком переписывает файловую систему, проверяя с помощью программы labelit соответствие меток требуемых томов. Программа dump обеспечивает копирование лишь тех фай­лов, которые были записаны позднее определенной даты (защита накоплением). Программа restor может анализировать данные, созданные программой dump, и восстанавливать отдельные файлы или всю файловую систему полностью. Программа cpio предназначена для создания одного большого файла, содержа­щего образ всей файловой системы или какой-либо ее части.

Для восстановления поврежденной, например, в результате сбоев в работе аппаратуры файловой системы используются программы fsck и fsdb.

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: