Партнерка на США и Канаду по недвижимости, выплаты в крипто

  • 30% recurring commission
  • Выплаты в USDT
  • Вывод каждую неделю
  • Комиссия до 5 лет за каждого referral

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

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

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

7.  Принципы построения и защита от сбоев и несанкциониро­ванного доступа.

Аутентификация, авторизация, аудит

Аутентификация

Аутентификация {authentication) предотвращает доступ к сети нежелательных лиц и разрешает вход для легальных пользователей, Термин «аутентификация» в переводе с латинского означает «установление подлинности». Аутентифика­цию следует отличать от идентификации. Идентификаторы пользователей ис­пользуются в системе с теми же целями, что и идентификаторы любых других объектов, файлов, процессов, структур данных, но они не связаны непосредст­венно с обеспечением безопасности. Идентификация заключается в сообщении пользователем системе своего идентификатора, в то время как аутентифика­ция — это процедура доказательства пользователем того, что он есть тот, за кого себя выдает, в частности, доказательство того, что именно ему принадлежит вве­денный им идентификатор.

НЕ нашли? Не то? Что вы ищете?

В процедуре аутентификации участвуют две стороны: одна сторона доказывает свою аутентичность, предъявляя некоторые доказательства, а другая сторона — аутентификатор — проверяет эти доказательства и принимает решение. В каче­стве доказательства аутентичности используются самые разнообразные приемы:

□ аутентифицируемый может продемонстрировать знание некоего общего для обеих сторон секрета: слова (пароля) или факта (даты и места события, про­звища человека и т. п.);

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

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

Сетевые службы аутентификации строятся на основе всех этих приемов, но ча­ще всего для доказательства идентичности пользователя используются пароли. Простота и логическая ясность механизмов аутентификации на основе паролей в какой-то степени компенсирует известные слабости паролей. Это, во-первых, возможность раскрытия и разгадывания паролей, а во-вторых, возможность «подслушивания» пароля путем анализа сетевого трафика. Для снижения уров­ня угрозы от раскрытия паролей администраторы сети, как правило, применяют встроенные программные средства для формирования политики назначения и использования паролей: задание максимального и минимального сроков дейст­вия пароля, хранение списка уже использованных паролей, управление поведе­нием системы после нескольких неудачных попыток логического входа и т. п. Перехват паролей по сети можно предупредить путем их шифрования перед пе­редачей в сеть.

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

В качестве объектов, требующих аутентификации, могут выступать не только поль­зователи, но и различные устройства, приложения, текстовая и другая информа­ция. Так, например, пользователь, обращающийся с запросом к корпоративному серверу, должен доказать ему свою легальность, но он также должен убедиться сам, что ведет диалог действительно с сервером своего предприятия. Другими словами, сервер и клиент должны пройти процедуру взаимной аутентификации. Здесь мы имеем дело с аутентификацией на уровне приложений. При установле­нии сеанса связи между двумя устройствами также часто предусматриваются про­цедуры взаимной аутентификации на белее низком, канальном уровне. Приме­ром такой процедуры является аутентификация по протоколам РАР и CHAP, входящим в семейство протоколов РРР. Аутентификация данных означает дока­зательство целостности этих данных, а также того, что они поступили именно от того человека, который объявил об этом. Для этого используется механизм элек­тронной подписи.

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

Авторизация доступа

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

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

□ .избирательный доступ;

□ мандатный доступ.

Избирательные права доступа реализуются в операционных системах универ­сального назначения. В наиболее распространенном варианте такого подхода определенные операции над определенным ресурсом разрешаются или запреща­ются пользователям или группам пользователей, явно указанным своими иден­тификаторами. Например, пользователю, имеющему идентификатор UserJT, может быть разрешено выполнять операции чтения и записи по отношению к файлу Filei. Модификацией этого способа является использование для идентификации пользователей их должностей, или факта их принадлежности к персоналу того или иного производственного подразделения, или еще каких-либо других пози­ционирующих характеристик. Примером такого правила может служить следую­щее: файл бухгалтерской отчетности BUCH могут читать работники бухгалте­рии и руководитель предприятия.

Мандатный подход к определению прав доступа заключается в том, что вся ин­формация делится на уровни в зависимости от степени секретности, а все поль­зователи сети также делятся на группы, образующие иерархию в соответствии с уровнем допуска к этой информации. Такой подход используется в известном делении информации на информацию для служебного пользования, «секретно», «совершенно секретно». При этом пользователи этой информации в зависимо­сти от определенного для них статуса получают различные формы допуска: пер­вую, вторую или третью. В отличие от систем с избирательными правами доступа в системах с мандатным подходом пользователи в принципе не имеют возмож­ности изменить уровень доступности информации. Например, пользователь более высокого уровня не может разрешить читать данные из своего файла пользо­вателю, относящемуся к более низкому уровню. Отсюда видно, что мандатный подход является более строгим, он в корне пресекает всякий волюнтаризм со стороны пользователя. Именно поэтому он часто используется в системах воен­ного назначения.

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

□ централизованная схема авторизации, базирующаяся на сервере;

децентрализованная схема, базирующаяся на рабочих станциях.

В первой схеме сервер управляет процессом предоставления ресурсов пользова­телю. Главная цель таких систем — реализовать «принцип единого входа». В со­ответствии с централизованной схемой пользователь один раз логически входит в сеть и получает на все время работы некоторый набор разрешений по досту­пу к ресурсам сети. Система Kerberos с ее сервером безопасности и архитекту­рой клиент-сервер является наиболее известной системой этого типа. Системы TACACS и RADIUS, часто применяемые совместно с системами удаленного доступа, также реализуют этот подход.

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

В крупных сетях часто применяется комбинированный подход предоставления пользователю прав доступа к ресурсам сети: сервер удаленного доступа ограни­чивает доступ пользователя к подсетям или серверам корпоративной сети, то есть к укрупненным элементам сети, а каждый отдельный сервер сети сам по себе ограничивает доступ пользователя к своим внутренним ресурсам: разделяемым каталогам, принтерам или приложениям. Сервер удаленного доступа предостав­ляет доступ на основании имеющегося у него списка прав доступа пользователя (Access Control List, ACL), а каждый отдельный сервер сети предоставляет до­ступ к своим ресурсам на основании хранящегося у него списка прав доступа, например ACL файловой системы.

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

Аудит паролем имел легальный доступ.

Аудит (auditing) — фиксация в системном журнале событий, связанных с досту­пом к защищаемым системным ресурсам. Подсистема аудита современных ОС позволяет дифференцированно задавать перечень интересующих администра­тора событий с помощью удобного графического интерфейса. Средства учета и наблюдения обеспечивают возможность обнаружить и зафиксировать важные события, связанные с безопасностью, или любые попытки создать, получить до­ступ или удалить системные ресурсы. Аудит используется для того, чтобы засе­кать даже неудачные попытки «взлома» системы.

Учет и наблюдение означает способность системы безопасности «шпионить» за выбранными объектами и их пользователями и выдавать сообщения тревоги, когда кто-нибудь пытается читать или модифицировать системный файл. Если кто-то пытается выполнить действия, определенные системой безопасности для отслеживания, то система аудита пишет сообщение в журнал регистрации, иден­тифицируя пользователя. Системный менеджер может создавать отчеты о без­опасности, которые содержат информацию из журнала регистрации. Для «сверх безопасных» систем предусматриваются аудио - и видеосигналы тревоги, устанав­ливаемые на машинах администраторов, отвечающих за безопасность.

Поскольку никакая система безопасности не гарантирует защиту на уровне 100 %, то последним рубежом в борьбе с нарушениями оказывается система аудита.

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

Технология защищенного канала

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

Технология защищенного канала призвана обеспечивать безопасность передачи данных по открытой транспортной сети, например по Интернету. Защищенный канал подразумевает выполнение трех основных функций:

□ взаимную аутентификацию абонентов при установлении соединения, которая может быть выполнена, например, путем обмена паролями;

□ защиту передаваемых по каналу сообщений от несанкционированного досту­па, например, путем шифрования;

□ подтверждение целостности поступающих по каналу сообщений, например, путем передачи одновременно с сообщением его дайджеста.

Совокупность защищенных каналов, созданных предприятием в публичной сети для объединения своих филиалов, часто называют виртуальной частной сетью (Virtual Private Network, VPN).

Существуют разные реализации технологии защищенного канала, которые, в част­ности, могут работать на разных уровнях модели OSI. Так, функции популярно­го протокола SSL соответствуют представительному уровню модели OSI. Новая версия сетевого протокола IP предусматривает все функции — взаимную аутен­тификацию, шифрование и обеспечение целостности, — которые по определе­нию свойственны защищенному каналу, а протокол туннелирования РРТР за­щищает данные на канальном уровне.

В зависимости от места расположения программного обеспечения защищенного канала различают две схемы его образования:

□ схему с конечными узлами, взаимодействующими через публичную сеть (рис. 11.6, а)\

Q схему с оборудованием поставщика услуг публичной сети, расположенным на границе между частной и публичной сетями (рис. 11.6, б).

8.  Назначение, функции, классификация основных компонентов системного программного обеспечения.

В англоязычной технической литературе термин System Software (системное про­граммное обеспечение) означает программы и комплексы программ, являющие­ся общими для всех, кто совместно использует технические средства компьютера, и применяемые как для автоматизации разработки (создания) новых программ, так и для организации выполнения программ существующих. С этих позиций системное программное обеспечение может быть разделено на следующие пять групп:

1. Операционные системы.

2. Системы управления файлами.

3. Интерфейсные оболочки для взаимодействия пользователя с ОС и программ­ные среды.

4. Системы программирования.

5. Утилиты.

Рассмотрим вкратце эти группы системных программ.

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

Основными функциями, которые выполняет ОС, являются следующие:

О прием от пользователя (или от оператора системы) заданий или команд, сформулированных на соответствующем языке — в виде директив (ко­манд) оператора или в виде указаний (своеобразных команд) с помощью соответствующего манипулятора (например, с помощью мыши), — и их обработка;

О прием и исполнение программных запросов на запуск, приостановку, оста­новку других программ;

О загрузка в оперативную память подлежащих исполнению программ;

О инициация программы (передача ей управления, в результате чего процес­сор исполняет программу);

О идентификация всех программ и данных;

О обеспечение работы систем управлений файлами (СУФ) и/или систем управления базами данных (СУБД), что позволяет резко увеличить эф - фективность всего программного обеспечения;

О обеспечение режима мультипрограммирования, то есть выполнение двух или более программ на одном процессоре, создающее видимость их одно­временного исполнения;

О обеспечение функций по организации и управлению всеми операциями ввода/вывода;

О удовлетворение жестким ограничениям на время ответа в режиме реаль­ного времени (характерно для соответствующих ОС);

О распределение памяти, а в большинстве современных систем и организа­ция виртуальной памяти;

О планирование и диспетчеризация задач в соответствии с заданными стра­тегией и дисциплинами обслуживания;

О организация механизмов обмена сообщениями и данными между выпол­няющимися программами;

О защита одной программы от влияния другой; обеспечение сохранности данных;

О предоставление услуг на случай частичного сбоя системы;

О обеспечение работы систем программирования, с помощью которых поль - зователи готовят свои программы.

2. Назначение системы управления файлами — организация более удобного доступа к данным, организованным как файлы. Именно благодаря системе управления файлами вместо низкоуровневого доступа к данным с указанием конкретных физических адресов нужной нам записи используется логиче­ский доступ с указанием имени файла и записи в нем. Как правило, все совре­менные ОС имеют соответствующие системы управления файлами. Однако выделение этого вида системного программного обеспечения в отдельную ка­тегорию представляется целесообразным, поскольку ряд ОС позволяет рабо­тать с несколькими файловыми системами (либо с одной из нескольких, либо сразу с несколькими одновременно). В этом случае говорят о монтируемых файловых системах (дополнительную систему управления файлами можно установить), и в этом смысле они самостоятельны. Более того, можно назвать примеры простейших ОС, которые могут работать и без файловых систем, а значит, им необязательно иметь систему управления файлами, либо они мо­гут работать с одной из выбранных файловых систем. Надо, однако, понимать, что любая система управления файлами не существует сама по себе — она разработана для работы в конкретной ОС и с конкретной файловой систе­мой. Можно сказать, что всем известная файловая система FAT (file allocation table)1 имеет множество реализаций как система управления файлами, напри­мер FAT-16 для самой MS-DOS, super-FAT для OS/2, FAT для Windows NT

и т. д. Другими словами, для работы с файлами, организованными в соответ­ствии с некоторой файловой системой, для каждой ОС должна быть разра­ботана соответствующая система управления файлами; и эта система управ­ления файлами будет работать только в той ОС, для которой она и создана.

Для удобства взаимодействия с ОС могут использоваться дополнительные интерфейсные оболочки. Их основное назначение — либо расширить возмож­ности по управлению ОС, либо изменить встроенные в систему возможности. В качестве классических примеров интерфейсных оболочек и соответствую­щих операционных сред выполнения программ можно назвать различные варианты графического интерфейса X Window в системах семейства UNIX (например, К Desktop Environment в Linux), PM Shell или Object Desktop в OS/2 с графическим интерфейсом Presentation Manager; наконец, можно указать разнообразные варианты интерфейсов для семейства ОС Windows компании Microsoft, которые заменяют Explorer и могут напоминать либо UNIX с его графическим интерфейсом, либо OS/2, либо MAC OS. Следует отметить, что о семействе ОС компании Microsoft с общим интерфейсом, реа­лизуемым программными модулями с названием Explorer (в файле system. ini, который находится в каталоге Windows, имеется строка SHELL=€XPLORER. EXE), все же можно сказать, что заменяемой в этих системах является только ин­терфейсная оболочка, в то время как сама операционная среда остается неиз­менной; она интегрирована в ОС. Другими словами, операционная среда определяется программными интерфейсами, то есть API (application program interface). Интерфейс прикладного программирования (API) включает в себя управление процессами, памятью и вводом/выводом.

Ряд операционных систем могут организовывать выполнение программ, соз­данных для других ОС. Например, в OS/2 можно выполнять как программы, созданные для самой OS/2, так и программы, предназначенные для выполне­ния в среде MS-DOS и Windows 3.x. Соответствующая операционная среда организуется в операционной системе в рамках отдельной виртуальной ма­шины. Аналогично, в системе Linux можно создать условия для выполнения некоторых программ, написанных для Windows 95/98. Определенными воз­можностями исполнения программ, созданных для иной операционной среды, обладает и Windows NT. Эта система позволяет выполнять некоторые про­граммы, созданные для MS-DOS, OS/2 1.x, Windows 3.x. Правда, в своем по­следнем семействе ОС Windows 2000 разработчики решили отказаться от поддержки возможности выполнения DOS-программ.

Наконец, к этому классу системного программного обеспечения следует отне­сти и эмуляторы, позволяющие смоделировать в одной операционной сис­теме какую-либо другую машину или операционную систему. Так, известна система эмуляции WMWARE,; которая позволяет запустить в среде Linux любую другую ОС; например Windows. Можно, наоборот, создать эмулятор, работающий в среде Windows, который позволит смоделировать компьютер, работающий под управлением любой ОС, в том числе и под Linux.

Таким образом, термин операционная среда означает соответствующий ин­терфейс, необходимый программам для обращения к ОС с целью получить определенный сервис1 — выполнить операцию ввода/вывода, получить или освободить участок памяти и т. д.

3. Система программирования на рис. 1 представлена прежде всего такими компонентами, как транслятор с соответствующего языка, библиотеки подпро­грамм, редакторы, компоновщики и отладчики. Не бывает самостоятельных (оторванных от ОС) систем программирования. Любая система программи­рования может работать только в соответствующей ОС, под которую она и создана, однако при этом она может позволять разрабатывать программное обеспечение и под другие ОС. Например, одна из популярных систем про­граммирования на языке C/C++ от фирмы Watcom для OS/2 позволяет по­лучать программы и для самой OS/2, и для DOS, и для Windows.

В том случае, когда создаваемые программы должны работать совсем на другой аппаратной базе, говорят о кросс-системах. Так, для ПК на базе микропроцес­соров семейства i80x86 имеется большое количество кросс-систем, позволяю­щих создавать программное обеспечение для различных микропроцессоров и микроконтроллеров.

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

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4