Наша первая попытка создать такой пакет представлена в примере 10.2. Пакет k_payroll гарантирует, что записи могут удаляться только начальником отдела и что устанавливать значение столбца SALARY может только начальник отдела.
Пример построения пакета для обеспечения безопасности доступа к данным
CREATE OR REPLACE PACKAGE k_payroll AS my_dept payroll.dept%TYPE; mgr BOOLEAN;
PROCEDURE del (p_emp_id INTEGER);
PROCEDURE ins (p_emp_id INTEGER, p_name VARCHAR2
,p_dept INTEGER, p_payment_period VARCHAR2
,p_salary INTEGER);
PROCEDURE upd (p_emp__id INTEGER, p_name VARCHAR2
,p_payment_penod VARCHAR2 ,p_salary INTEGER);
END k_payroll;
/
CREATE OR REPLACE PACKAGE BODY k_payroll AS
mgr_flag payroll.mgr_flag%TYPE;
CURSOR c_me IS
SELECT dept,
mgr_flag
FROM mysys_users
WHERE username = USER;
FUNCTION checkdept (p_emp_id INTEGER) RETURN BOOLEAN IS
dept payroll.dept%TYPE;
CURSOR cjpayroll IS
SELECT pay.dept
FROM payroll pay
WHERE id = p_emp_id;
BEGIN
OPEN c_payroll ;
FETCH cjpayroll INTO dept;
CLOSE c_payroll;
IF dept <> my_dept THEN
RETURN FALSE;
END IF;
RETURN TRUE;
END checkdept;
PROCEDURE del (p_emp_id INTEGER) IS
Удалять сотрудников могут только начальники их отделов
Записитаблицы Payroll
BEGIN
IF checkdept(p_emp_id) AND mgr THEN
DELETE payroll
WHERE id = p_emp_id;
ELSE
raise_application_error (-20001, 'Insufficient Privilege'); END IF;
END del;
PROCEDURE ins (p_emp_id INTEGER, p_name VARCHAR2
,p—dept INTEGER
,payment_period VARCHAR2
,p_salary INTEGER) IS
— Можете вставлять записи Payroll только в свой отдел
~ Устанавливать зарплату может только начальник отдела
(в противном случае устанавливается в пустое значение)
l_salary payroll.salary%TYPE;
BEGIN
IF NOT checkdept(p_emp_id) THEN
raise_application_error (-20001, 'Insufficient Privilege');
END IF;
IF NOT mgr THEN
l_salary := NULL;
ELSE
l_salary := p_salary;
END IF;
INSERT INTO payroll (id,name,dept,payment_period, salary)
VALUES (p_erap_id,p_name,p_dept,p_payraent_period,l_salary);
END ins;
PROCEDURE upd (p_emp_id INTEGER, p_name VARCHAR2
,p_payment_period VARCHAR2 ,p_salary INTEGER) IS
- Можете обновлять записи Payroll только в своем отделе
- Обновлять зарплату может только начальник отдела
(в противном случае остается без изменений)
- Отделизменятьнельзя
l_salary payroll.salary%TYPE;
CURSOR c_old_salary IS
SELECT pay.salary
FROM payroll pay
WHERE id = p_erap_id;
BEGIN
IF NOT checkdept (p_emp_id) THEN
raise applicatiori_error (-20001, 'Insufficient Privilege');
END IF;
IF NOT mgr THEN
OPEN c_old_salary;
FETCH c__old_s alary INTO l__salary;
CLOSE c_old_salary,
ELSE
l_salary := p_salary;
END IF;
UPDATE payroll
SET name = p_name
,payment_period = p_payment_period
,salary = l_salary
WHERE id = p_emp_id;
END upd;
-Код инициализации пакета
BEGIN
OPEN c_me;
FETCH c_me
INTO ray_dept
,mgr_flag;
CLOSE c_me;
IF mgr_flag = 'Y' THEN
mgr := TRUE;
ELSE
mgr := FALSE;
END IF;
END k_payroll;
/
Юридическая защита авторских прав на базы данных
Вопросы правовой защиты программ для ЭВМ и базы данных от незаконного использования являются очень актуальными в настоящий момент. Для иллюстрации этого приведем несколько фактов. По данным Ассоциации производителей компьютерного обеспечения, уровень компьютерного пиратства в России составляет 94%. Уровень пиратства в странах Запада существенно ниже: в Германии - 50%, в США - 35%. По данным МВД РФ, потери российского бюджета от неуплаты налогов продавцами компьютерных программ составляют 85 млн. долл. Деньги, полученные от продажи, часто уходят в распоряжение криминальных структур. Кроме того, 105 млн. долл. теряют российские предприятия. В области разработки компьютерных программ и баз данных в стране работает около шести тысяч фирм, обеспечивающих занятость более 200 тыс. человек. Данной сфере производства грозит стагнация - программисты попросту теряют стимулы к созданию новых передовых программных продуктов.
Признание права – первый из перечисленных в п. 1 ст. 18 Закона РФ «О правовой охране программ для ЭВМ и баз данных» способов защиты авторских прав. Этот способ защиты играет в основном превентивную роль и служит установлению определенности во взаимоотношениях субъектов гражданского права. Признание права как способ защиты применяется, когда оспаривается или отрицается принадлежность определенному лицу исключительных авторских прав на программу для ЭВМ или базу данных. Признание права как средство его защиты может быть реализовано лишь в судебном порядке путем подтверждения наличия или отсутствия у лица отдельных авторских правомочий или их совокупности.
П. 1 ст. 17 Закона РФ «О правовой охране программ для ЭВМ и баз данных» определяет нарушителя авторского права как физическое или юридическое лицо, которое не выполняет требований настоящего закона в отношении исключительных прав правообладателей, в том числе ввозит в Российскую Федерацию экземпляры программы для ЭВМ или базы данных, изготовленные без разрешения их правообладателя. Это может выражаться в присвоении авторства, осуществлении перечисленных в ст. 10 Закона РФ «О правовой охране программ для ЭВМ и баз данных» действий без разрешения правообладателя и т. д. Отдельное выделение импорта экземпляров программы для ЭВМ или базы данных, изготовленных без разрешения их правообладателей объясняется тем, что в государстве, где данные экземпляры были изготовлены, это действие может считаться законным и не влекущим ответственности.
Заключение
Информационная безопасность относится к числу дисциплин, развивающихся чрезвычайно быстрыми темпами. Этому способствуют как общий прогресс информационных технологий, так и постоянное противоборство нападающих и защищающихся.
К сожалению, подобная динамичность объективно затрудняет обеспечение надежной защиты. Причин тому несколько:
• повышение быстродействия микросхем, развитие архитектур с высокой степенью параллелизма позволяет методом грубой силы (перебором вариантов) преодолевать барьеры (прежде всего криптографические), ранее казавшиеся неприступными;
• развитие сетей, увеличение числа связей между информационными системами, рост пропускной способности каналов расширяют число потенциальных злоумышленников, имеющих техническую возможность осуществить нападение;
• появление новых информационных сервисов ведет и к появлению новых угроз как «внутри» сервисов, так и на их стыках;
• конкуренция среди производителей программного обеспечения заставляет сокращать сроки разработки системы, что ведет к снижению качества тестирования и выпуску продуктов с дефектами защиты;
• навязываемая потребителям парадигма постоянного наращивания аппаратного и программного обеспечения вступает в конфликт с бюджетными ограничениями, из-за чего снижается доля ассигнований на безопасность.
Обеспечение информационной безопасности современных информационных систем требует комплексного подхода. Оно невозможно без применения широкого спектра защитных средств, объединенных в продуманную архитектуру. Далеко не все эти средства получили распространение в России, некоторые из них даже в мировом масштабе находятся в стадии становления.
В этих условиях позиция по отношению к информационной безопасности должна быть особенно динамичной. Теоретические воззрения, стандарты, сложившиеся порядки необходимо постоянно сверять с требованиями практики. От атак не защититься книгой (даже оранжевой) или сертификатом. Реальная безопасность нуждается в каждодневной работе всех заинтересованных сторон.
Список литературы
Голицына О.Л., Максимов Н.В. и др., «Базы данных» (учебное пособие)
Могилёв А.В., Пак Н.И. и др., «Информатика»
Изюмин В.П. «Пиратство в сфере программного обеспечения» // Финансовые известия от 23 мая 2003 г.
Статья Юрия Шермана // www.tour-soft.com
Статья Сергея Гаврилова // www.sergevg@usa.net
Партыка Т.Л., Попов И.И. «Информационная безопасность», М.: Форум: инфра – м, 2004 г.
Герасименко В.А., Малюк А.А., «Основы защиты информации» М.: МИФИ, 2001 г.