Автор работы: Пользователь скрыл имя, 29 Марта 2011 в 16:28, шпаргалка
Работа содержит ответы на вопросы по дисциплине "Программирование".
Билет 19
1.Проектирование баз данных
Проектирование баз данных - процесс решения класса задач, связанных с созданием баз данных.
Основные задачи:
Основные элементы данной модели:
На этапе инфологического проектирования в ходе сбора информации о предметной области требуется выяснить:
Нормализованные отношения (таблицы) обладают лучшими свойствами для хранения и обновления данных. Сначала БД проверяется на первую нормальную форму (1НФ), затем на вторую (2НФ), 3-ю (3НФ), нормальную форму Бойса-Кодда (НФБКД), чётвертую (4НФ) и др. Если таблица не соответствует какой-либо нормальной форме, то выполняется её приведение к нормальной форме путём вертикального разбиения (проекция).
Модель «сущность-связь» (англ. “Entity-Relationship model”), или ER-модель, предложенная П. Ченом[1], является наиболее известным представителем класса семантических (концептуальных, инфологических) моделей предметной области. ER-модель обычно представляется в графической форме, с использованием оригинальной нотации П. Чена, называемой ER-диаграмма, либо с использованием других графических нотаций (Crow's Foot, Information Engineering и др.).
Основные преимущества ER-моделей:
Основные элементы ER-моделей:
Сущность - любой объект предметной области, имеющий атрибуты.
Связь между сущностями характеризуется:
Семантическая модель (концептуальная модель, инфологическая модель) – модель предметной области, предназначенная для представления семантики предметной области на самом высоком уровне абстракции. Это означет, что устранена или минимизирована необходимость использовать понятия «низкого уровня», связанные со спецификой физического представления и хранения данных.
Дейт К. Дж. Введение в системы баз данных. — 8-е изд. — М.: «Вильямс», 2006:
Семантическое
моделирование стало предметом
интенсивных исследований с конца
1970-х годов. Основным побудительным
мотивом подобных исследований (т.е.
проблемой, которую пытались разрешить
исследователи) был следующий факт. Дело
в том, что системы баз данных обычно обладают
весьма ограниченными сведениями о смысле
хранящихся в них данных. Чаще всего они
позволяют лишь манипулировать данными
определенных простых типов и определяют
некоторые простейшие ограничения целостности,
наложенные на эти данные. Любая более
сложная интерпретация возлагается на
пользователя. Однако было бы замечательно,
если бы системы могли обладать немного
более широким объемом сведений и несколько
интеллектуальнее отвечать на запросы
пользователя, а также поддерживать более
сложные (т.е. более высокоуровневые) интерфейсы
пользователя.
[…]
Идеи семантического моделирования могут
быть полезны как средство проектирования
базы данных даже при отсутствии их непосредственной
поддержки в СУБД.
Наиболее известным представителем класса семантических моделей является модель «сущность-связь» (ER-модель).
2. Понятие виртуальной машины. Принципы работы, управления, защиты данных и памяти
Виртуальная
машина (англ. virtual machine) — программная
или аппаратная среда, исполняющая некоторый код (например, байт-
Зачастую виртуальная машина эмулирует работу реального компьютера. На виртуальную машину, так же как и на реальный компьютер, можно устанавливать операционную систему, у виртуальной машины также есть BIOS,оперативная память, жёсткий диск (выделенное место на жёстком диске реального компьютера), могут эмулироваться периферийные устройства. На одном компьютере может функционировать несколько виртуальных машин.
Принцип работы
Виртуальная машина имеет свой BIOS, оперативную память, жёсткий диск (выделенные из реального компьютера) и способна эмулировать периферийные устройства.
Работа ее основана на технологии квази-эмуляции, позволяющей аппаратно невиртуализируемый процессор виртуализировать программным путем. Основные задачи квази-эмуляции включают: необходимость определить множество инструкций процессора, которые можно исполнять без эмуляции; необходимость определить множество инструкций процессора, которые нельзя исполнять без эмуляции, а также обеспечить обнаружение этих инструкций в гостевом коде и произвести их эмуляцию; когда требуется взаимодействие с хостовой операционной системой (например, при эмуляции внешних устройств) нужно обеспечить переключение в ее контекст и использовать ее функции, а для нормального функционирования хостовой операционной системы надо обеспечить передачу ей прерываний от внешних устройств, произошедших в контексте гостевой операционной системы.
3. Идентификация и аутентификация при входе в информационную систему. Использование парольных схем. Недостатки парольных схем. Применение программно-аппаратных средств аутентификации
Аутентификация, авторизация и администрирование действий пользователей
С каждым зарегистрированным в компьютерной системе субъектом (пользователем или процессом, действующим от имени пользователя) связана некоторая информация, однозначно идентифицирующая его. Это может быть число или строка символов, именующие данный субъект. Эту информацию называют идентификатором субъекта. Если пользователь имеет идентификатор, зарегистрированный в сети, он считается легальным (законным) пользователем; остальные пользователи относятся к нелегальным пользователям. Прежде чем получить доступ к ресурсам компьютерной системы, пользователь должен пройти процесс первичного взаимодействия с компьютерной системой, который включает идентификацию и аутентификацию.
Идентификация (Identification) — процедура распознавания пользователя по его идентификатору (имени). Эта функция выполняется, когда пользователь делает попытку войти в сеть. Пользователь сообщает системе по ее запросу свой идентификатор, и система проверяет в своей базе данных его наличие.
Аутентификация {Authentication) — процедура проверки подлинности заявленного пользователя, процесса или устройства. Эта проверка позволяет достоверно убедиться, что пользователь (процесс или устройство) является именно тем, кем себя объявляет. При проведении аутентификации проверяющая сторона убеждается в подлинности проверяемой стороны, при этом проверяемая сторона тоже активно участвует в процессе обмена информацией. Обычно пользователь подтверждает свою идентификацию, вводя в систему уникальную, не известную другим пользователям информацию о себе (например, пароль или сертификат).
Идентификация и аутентификация являются взаимосвязанными процессами распознавания и проверки подлинности субъектов (пользователей). Именно от них зависит последующее решение системы: можно ли разрешить доступ к ресурсам системы конкретному пользователю или процессу. После идентификации и аутентификации субъекта выполняется его авторизация.
Авторизация (Authorization) — процедура предоставления субъекту определенных полномочий и ресурсов в данной системе. Иными словами, авторизация устанавливает сферу его действия и доступные ему ресурсы. Если система не может надежно отличить авторизованное лицо от неавторизованного, то конфиденциальность и целостность информации в этой системе могут быть нарушены. Организации необходимо четко определить свои требования к безопасности, чтобы принимать решения о соответствующих границах авторизации.
С процедурами аутентификации и авторизации тесно связана процедура администрирования действий пользователя.
Администрирование {Accounting) — регистрация действий пользователя в сети, включая его попытки доступа к ресурсам. Хотя эта учетная информация может быть использована для выписывания счета, с позиций безопасности она особенно важна для обнаружения, анализа инцидентов безопасности в сети и соответствующего реагирования на них. Записи в системном журнале, аудиторские проверки и ПО accounting — все это может быть использовано для обеспечения подотчетности пользователей, если что-либо случится при входе в сеть с их идентификатором.
Необходимый уровень аутентификации определяется требованиями безопасности, которые установлены в организации. Общедоступные Web-серверы могут разрешить анонимный или гостевой доступ к информации. Финансовые транзакции могут потребовать строгой аутентификации. Примером слабой формы аутентификации может служить использование IP-адреса для определения пользователя. Подмена (spoofing) IP-адреса может легко разрушить механизм аутентификации. Надежная аутентификация является тем ключевым фактором, который гарантирует, что только авторизованные пользователи получат доступ к контролируемой информации.
При защите каналов передачи данных должна выполняться взаимная аутентификация субъектов, т. е. взаимное подтверждение подлинности субъектов, связывающихся между собой по линиям связи. Процедура подтверждения подлинности выполняется обычно в начале сеанса установления соединения абонентов. Термин «соединение» указывает на логическую связь (потенциально двустороннюю) между двумя субъектами сети. Цель данной процедуры — обеспечить уверенность, что соединение установлено с законным субъектом и вся информация дойдет до места назначения.