- •Методические указания
- •Технология разработки защищенных автоматизированных систем
- •Справочные данные по моделям нарушителей:
- •Информационный компонент системы
- •6.1.Концептуальная модель данных зас
- •6.2. Логическая модель данных
- •7.2 Описание пользовательского интерфейса
- •7.3. Описание программных модулей и форм:
- •Заключение
- •1. Требования к системе
- •1.1. Требование к системе в целом
- •1.2. Сзи должна оказывать противодействие след угрозам
- •3. Требования к видам обеспечения
- •Теоретические основы проектирования и разработки зас.
- •Алгоритм проектирования индивидуальных систем защиты
- •Потенциально возможные средства
7.2 Описание пользовательского интерфейса
АС «Недвижимость» должна обладать эргономичным интерфейсом, состоящим из 3-х элементов:
1. Интерфейс управления. Реализован в виде кнопочного меню.
2. Справочный интерфейс. Включает в себя справочную форму (с контекстами справки по всем функциям системы), а также всплывающие подсказки, информирующие о назначении элементов управления.
3. Интерфейс ввода/вывода. Представлен экранными формами ввода/вывода.
7.3. Описание программных модулей и форм:
Организация подсистемы регистрации пользователей:
LOCAL s as Character
LOCAL o as Character
o=''
FOR i=1 TO LEN(ALLTRIM(thisform.text2.Value))
s=CHR(ASC(SUBSTR(ALLTRIM(thisform.text2.Value),i,1))+1)
o=o+s
endfor
USE бд!table_cod
IF ALLTRIM(thisform.text1.value)==""
MESSAGEBOX("Логин не введён",0,"Внимание")
ELSE
LOCATE FOR ALLTRIM(table_cod.login)=ALLTRIM(thisform.text1.value)
IF FOUND()then
IF ALLTRIM (o)==ALLTRIM(table_cod.pas)
USE БД!jur_reg IN 0
INSERT INTO jur_reg(login,pas,vrem_vh,prizn) VALUES (thisform.text1.VAlue,o,DATETIME(),'успешно')
IF ALLTRIM(table_cod.doljnost)=='Администр'then
DO FORM prof_admin
ENDIF
IF ALLTRIM(table_cod.doljnost)=='Диспетчер'then
DO FORM prof_dis
ENDIF
IF ALLTRIM(table_cod.doljnost)=='Бухгалтер'then
DO FORM prof_bug
ENDIF
IF ALLTRIM(table_cod.doljnost)=='Менеджер'then
DO FORM prof_men
ENDIF
CLOSE TABLES ALL
thisform.release
ELSE
IF p<3 THEN
INSERT INTO jur_reg(login,pas,vrem_vh,prizn) VALUES (thisform.text1.VAlue,o,DATETIME(),'предупреждение')
MESSAGEBOX("Пароль не верный",0,"Внимание")
thisform.text1.Value=""
thisform.c.Value=""
ELSE
MESSAGEBOX("Пароль не верен.Система заблокирована",0,"Ошибка")
INSERT INTO jur_reg(login,pas,vrem_vh,prizn) VALUES (thisform.text1.VAlue,o,DATETIME(),'Блокировка')
thisform.text1.Value=""
thisform.text2.Value=""
thisform.Closable=.F.
thisform.Command1.enabled=.F.
thisform.release
DO FORM par_admin
CLOSE TABLES ALL
ENDIF
ENDIF
ELSE
IF p<3 THEN
INSERT INTO jur_reg(login,pas,vrem_vh,prizn) VALUES (thisform.text1.VAlue,o,DATETIME(),'предупреждение')
MESSAGEBOX("Логин не верный",0,"Внимание")
thisform.text1.Value=""
thisform.text2.Value=""
ELSE
MESSAGEBOX("Логин не верен.Система заблокирована",0,"Ошибка")
INSERT INTO jur_reg(login,pas,vrem_vh,prizn) VALUES (thisform.text1.VAlue,o,DATETIME(),'Блокировка')
thisform.text1.Value=""
thisform.text2.Value=""
thisform.Closable=.F.
thisform.Command1.enabled=.F.
thisform.release
DO FORM par_admin
CLOSE TABLES ALL
ENDIF
ENDIf
p=p+1
ENDIF
CLOSE TABLES ALL
Реализация алгоритма шифрования для проверки с ТКП на кнопке «Вход»
LOCAL s as Character
LOCAL o as Character
o=''
FOR i=1 TO LEN(ALLTRIM(thisform.text2.Value))
s=CHR(ASC(SUBSTR(ALLTRIM(thisform.text2.Value),i,1))+1)
o=o+s
endfor
Профиль
Администратор:
Профиль Администратор - настройки
пользователей:
Профиль Администратор-добавление нового пользователя
Обработчик для кнопки «генерация»:
LOCAL f as Character, u as Character
f=''
u=''
FOR i=ASC('A') TO ASC('Z')
f=f+CHR(i)
ENDFOR
FOR i=ASC('a') TO ASC('z')
f=f+CHR(i)
ENDFOR
FOR i=1 TO thisform.spinner1.value
u=u+SUBSTR(f,1+RAND()*LEN(f),1)
ENDFOR
thisform.text1.Value=u
Обработчик для кнопки «добавить»:
USE бд!table_cod
LOCAL s as Character
LOCAL o as Character
o=''
FOR i=1 TO LEN(ALLTRIM(thisform.text1.Value))
s=CHR(ASC(SUBSTR(ALLTRIM(thisform.text1.Value),i,1))+1)
o=o+s
endfor
INSERT INTO table_cod(fio, doljnost,pas,login) VALUES (thisform.text2.Value,thisform.text4.Value,o,thisform.text3.Value)
MESSAGEBOX("Запись добавлена",48,"сообщение")
INSERT INTO gurn_sob (deistv, imia_polz,ishod) VALUES ("добавление", thisform.text3.Value,"добавление")
Профиль Администратор-удаление пользователя
Обработчик для кнопки «удаление записи»
USE бд!table_cod
IF MESSAGEBOX("Вы действительно хотите удалить эту запись?",308,"Предупреждение")==6
DELETE FOR login=thisform.combo1.Value
PACK
MESSAGEBOX("Запись удалена", 48, "Собщение")
ENDIF
Обработчик для кнопки «Очистка журнала»
IF MESSAGEBOX ("Вы действительно хотите очистить журнал?",308,"предупреждение")==6
USE jur_reg
DELETE FOR RECNO()!=(RECCOUNT())-3
PACK
MESSAGEBOX("Запись удалена",48,"Сообщение")
Endif
Профиль Администратор-проверка целостности
Обработчик для кнопки «Подсчёт»
LOCAL i as Integer, j as Integer, hsum as Double, csum as Double
FOR i=1 TO RECCOUNT()
hsum=0
GO i
MESSAGEBOX(tablename)
USE (tablename) IN 7
csum=etalonsum
MESSAGEBOX(csum)
SELECT 7
FOR j=1 TO RECCOUNT()
GO j
hsum=hsum+VAL(SYS(2017,'',0,1))
*MESSAGEBOX(STR(hsum))
ENDFOR
IF csum==0 then
csum=hsum
ENDIF
SELECT control
replace checksum WITH hsum ,etalonsum WITH csum
ENDFOR
Обработчик для кнопки «Добавить»
DO FORM frmBrowse
MESSAGEBOX(cfile)
IF NOT EMPTY(cFile) THEN
INSERT INTO control values(JUSTFNAME(cFile), 0, 0)
ENDIF
thisform.grCHECK.SetFocus
Выбор таблицы:
Обработчик для кнопки выбора таблицы:
IF cfile=='' then
thisform.cbNoCRC.Enabled = .F.
ENDIF
ctable = GETFILE('DBF', 'Выберите файл таблицы', 'Выбрать!', 0, 'Выбор таблицы')
DO CASE
CASE EMPTY(cTable)
RETURN
OTHERWISE
thisform.txtFile.Value=(cTable)
ENDCASE
ТКП:
ТРП:
Журнал входа\выхода из системы:
Журнал событий:
Профиль Диспетчер:
Профиль менеджер:
Профиль Бухгалтер:
Окно ввода пароля при блокировке системы:
Обработчик для кнопки «ОК»
USE БД!table_cod
IF ALLTRIM (thisform.text1.value)==""
MESSAGEBOX("Пароль не введён",0,"Внимание")
ELSE
LOCATE FOR ALLTRIM(table_cod.doljnost)='Администр'
IF FOUND() then
IF ALLTRIM(thisform.text1.value)==ALLTRIM(table_cod.pas)
INSERT INTO jur_reg (login,pas,vrem_vh,vrem_vih,prizn) VALUES ('Администр',thisform.text1.Value,DATETIME(),DATETIME(),"Разблокировка")
MESSAGEBOX("программа разлокирована",0,"Сообщение")
thisform.Release
DO FORM reg
ELSE
INSERT INTO jur_reg(login,pas,vrem_vh,vrem_vih,prizn) VALUES ('Администр',thisform.text1.Value,DATETIME(),DATETIME(),"Разблокировка")
MESSAGEBOX("пароль не верен",0,"ошибка")
thisform.text1.value=""
ENDIF
ENDIF
p=1
ENDIF
thisform.Release
DO FORM reg
CLOSE TABLES all
Алгоритм работы программы
Для разработки я выбрал сочетание объектно-ориентированной и структурированной методологий проектирования, т.к этот подход позволяет наиболее полно и эффективно использовать возможности среды разработки VFP 8.0.
Алгоритм работы СЗИ представлен на рисунке 4
Создание организационного компонента системы
В начале указать последовательность внедрения системы на предприятии, на какое рабочее место устанавливается система и описать рабочее оборудование. Указать назначение инструкции и порядок работы с системой для персонала предприятия. Начать раздел с указаний по технике безопасности при работе с системой.
Далее по каждой выполняемой задаче написать понятную инструкцию, указав поведение пользователя в нестандартных ситуациях.
Инструкцию по сопровождению системы разрабатывают для специалистов по обслуживанию АС. Для сопровождения указать все сведения о комплексе технических средств (КТС), о программном обеспечении и действиях при сопровождении программно-информационного компонента системы.
Например:
Порядок работы с системой
Данная документация разрабатывается на автоматизированную систему "Недвижимость" для персонала риэлтерской фирмы ООО «Каян»:
- удобный стол и мягкое кресло;
- ПК (Intel Pentium 4 -733/256 RAM/40GB HDD/ATI Radeon 128/ sound/FDD/CD-ROM/LCD 15''/keyboard/mouse
- Принтер HP laserJet 3052;
- ПО: Windows XP/ 2000,MS Office XP / 2003
При работе АС следует соблюдать правила техники безопасности:
1) Не подключать аппаратное обеспечение к неисправным источникам питания (а также не пытаться их ремонтировать самостоятельно)
2) Использование программно-аппаратных ресурсов системы допустимо строго по назначению
3) Завершать работу системы следует корректно (отключить принтер, в меню АС "Недвижимость" нажать кнопку "Выход", завершить работу ОС - Пуск \ Завершение работы)
4) Не рекомендуется допускать к эксплуатации системы посторонних людей или неквалифицированных сотрудников
5) Запрещается осуществлять вибрационные, ударные, влажностные, химические, термические и сильные радиоэлектронные воздействия
6) Рекомендуется через каждые 1.5 - 2 часа работы производить "гимнастику" для глаз (смотреть вдаль, делать упражнения для аккомодации)
Порядок работы с системой, описание функций.
В первую очередь следует включить систему. Для этого необходимо: нажать кнопку включения на ИБП, затем кнопку "Power" на системном блоке ПК, дождаться загрузки ОС, запустить файл nedvijimost.exe (если он не прописан в автозагрузке).
После входа в систему, диспетчер должен запустить файл nedvijimost.ехе, который будет находиться на рабочем столе.
При поступлении звонка от продавца или арендодателя диспетчер должен:
1) выбрать в главном меню(ГМ) пункт «Клиенты» и зарегистрировать клиента если ранее он был не зарегистрирован(нужно спросить проходил ли он ранее регистрацию или нет) зарегистрировать его согласно пунктам формы;
2) выбрать в ГМ пункт «3аявки»и зарегистрировать объект согласно пунктам формы;
При поступлении звонка от покупателя или арендатора диспетчер должен зайти в ГМ и выбрать пункт «3аявки» и в открывшейся форме пункт «Найти» и выполнить поиск согласно пожеланиям клиента. Если предложения нет, то он просит перезвонить через некоторое время клиента, если же предложение есть, то диспетчер сообщает клиенту что на следующий день с ним свяжется маклер. Далее диспетчер в ГМ выбирает пункт «Маклеры» и в открытой форме выбирает маклера и связывается с ним, и передаёт ему данные о клиентах и об объектах на следующий день в печатной форме(пункт «Печать» в форме «3аяявки»). Данные о заключённой сделке вносятся в форме «Сделки» согласно пунктам формы в ГМ .
При поступлении на работу диспетчера, информация о нем заполняется в форме «Диспетчера» в ГМ согласно пунктам формы.
При поступлении на работу маклера, информация о нем заполняется в форме «Маклеры» в ГМ согласно пунктам формы.
Перемещение по записям во всех формах осуществляется одинаково, с помощью кнопок на форме «Следующая», «Предыдущая», «В начало», «В конец».При остановке на нужной записи, её можно распечатать, нажав на кнопку «Печать». Удаление записи происходит в 3 этапа:
1 )Переместиться на нужную запись и нажать на кнопку «Выбрать»;
2)Далее убедиться в том что запись была выбрана и нажать на кнопку «Таблица» если же мы хотим отменить выбор-«Отменить»;
3 )Нажать на кнопку «Удалить»;
Можно быстро переместиться на запись введя её номер в поле "Номер записи" и нажав на кнопку перейти.
При работе с системой возможно возникновение исключительных ситуаций: отказ аппаратного обеспечения (выход из строя или некорректная работа ПК, принтера), сбои в работе ОС и другого прикладного ПО, и какие-либо ошибки возникающие при работе АС "Недвижимость".
Первые две категории проблем самостоятельно устранять не рекомендуется без специальной квалификации, в противном случае возможна окончательная поломка оборудования, потеря всей информации и даже травматизм. При их возникновении следует обратиться к сопровождающему персоналу.
При возникновении исключительной ситуации с программой (зацикливание или появление множества непонятных ошибок, типа «pa.prg не существует» или «переменная qw не найдена») следует выполнить следующие действия:
1.) Нажать ctrl+alt+del и глядя в список процессов убедиться, что не запущена еще одна копия приложения nedvijimost.exe (если запущена, ее следует беспощадно завершить)
2.) Если нет другой копии в процессах следует выйти из АС и запустить ее снова
3.) Если не помогли первые 2 пункта, следует перезапустить ПК.
4.) Если по-прежнему отсутствует доступ к какому-то файлу - обратиться к сопровождающему персоналу.
(Если работа с системой прервана в процессе шифрования/дешифрации – немедленно обратиться к сопровождающему персоналу)
Настоятельно рекомендуется перед работой с функциями из раздела "БД" меню осуществлять резервное копирование файлов БД.
Инструкция администратора безопасности АС «Недвижимость»
В обязанности администратора безопасности входят следующие функции:
1. Управление учетными записями
2. Управление политикой безопасности в системе( Разграничением полномочий)
3. Постоянный контроль за функционированием, отслеживание действий уполномоченных пользователей и пресечение несанкционированных манипуляций с их стороны.
Управление учетными записями осуществляется посредством добавления, отключения и модификации учетных записей при помощи элементов управления соответствующей формы.
Для добавления нового пользователя следует нажать кнопку «Добавить нового» и в появившемся окне указать Логин, Пароль и Тип уч. записи...
Также форма «Настройки и администрирование» позволяет осуществлять просмотр журнала регистрации входа/выхода (для этого следует кликнуть на соответствующей вкладке).
На данный момент система рассчитана на 4 типа учетных записей: Администратор (директор),диспетчер, менеджер, бухгалтер. Делегировать полномочия следует разумно в соответствии с функциональной необходимостью для того или иного класса пользователей. Типы учетных записей следует устанавливать в соответствии с занимаемыми должностями.
Также форма «Управление политикой безопасности» позволяет осуществлять контроль за события ми, происходящими в системе, а также выявлять попытки НСД + инициировать проверку целостности данных. Особое внимание следует уделять журналу НСД, отражающему все нарушения (попытки нелегального входа в систему и даже попытки подмены или модификации данных).
Информация, которой владеет администратор безопасности, является строго конфиденциальной.
Инструкция по сопровождению системы
Данная инструкция предназначается для лиц (техников), осуществляющих сопровождение АС риэлтерской фирмы ООО «Каян»
Техник должен обладать образованием в области АСОИ.
АС "Недвижимость" разработана средствами Visual FoxPro 8.0, с использованием сочетания объектно-ориентированной и структурированной методологий разработки. Для функционирования системы необходимы следующие условия:
-ПК (Intel Pentium 4 -733/256 RAM/40GB HDD/ATI Radeon 128/ sound/FDD/CD-ROM/LCD 15''/keyboard/mouse
- Принтер HP 3052
- ПО: Windows XP/ 2000, MS Visual FoxPro 8.0, MS Office XP / 2003
Для комфортной работы необходимый объем свободного места на жестком диске должен быть не менее 60Гб (для нужд ОС, АС и прикладных программ).
В обязательном порядке должны быть установлены драйверы и необходимые сервисные программы для всех внутренних и периферийных устройств ПК (диски с драйверами и ПО должны постоянно находиться у сопровождающего персонала).
Ежемесячно должна производиться ревизия состояния средств автоматизации, дефрагментация дисков, очистка от пыли и другие необходимые функции.
Для проверки работоспособности системы необходимо запустить Test.exe находящийся на рабочим столе. И если появилось окно с сообщением «Целостность и безопасность системы не нарушены», то можно начинать свою работу, но если высветилось сообщение что «Целостность и безопасность системы нарушены», то следует обратиться к администратору. Контрольный тест системы приведён в Приложении 5.
Заключение
Следует указать задачи, поставленные перед разработчиком, методы решения этих задач, результаты выполнения этих задач, развитие системы в дальнейшем.
Например:
