Система за управление на идентификацията в БеУ

Post on 06-Feb-2016

51 views 0 download

description

Практикум 3 Отбор 2 - Ягодка. Система за управление на идентификацията в БеУ. Екип. Управление на проекта. План на проекта Skype срещи Система за контрол на задачите (JIRA) Помощен документ за работа със системата за контрол на задачите. Изготвени документи. - PowerPoint PPT Presentation

transcript

СИСТЕМА ЗА УПРАВЛЕНИЕ НА ИДЕНТИФИКАЦИЯТА В БЕУ

Практикум 3Отбор 2 - Ягодка

2

ЕКИПЧлен на екипа РолиНикодим Маринов Project Manager, Designer,

ImplementerВенцислав Русев Software Architect, Database

Designer, Designer, System Administrator, Implementer

Михаела Стоянова Business Analyst, Database Designer, Implementer

Владимир Коцев Business Analyst, Test Manager, Test Designer, Test Analyst, Tester

Калин Димитров User-Interface Designer, GUI Implementer, Technical Writer

Ивелин Стефанов Tester, Reviewer, Course Developer

3

УПРАВЛЕНИЕ НА ПРОЕКТА План на проекта Skype срещи Система за контрол на задачите (JIRA) Помощен документ за работа със

системата за контрол на задачите

4

ИЗГОТВЕНИ ДОКУМЕНТИ Венцислав: Data Model, Design Model, Risk

List, Software Architecture Владимир: Vision; Software Requirements

Specification; Quality Assurance Plan; Master Test Plan

Ивелин: User Manual Калин: JIRA Manual Михаела: Requirements; Business Model;

Site Map Никодим: Project Plan, Software

Development Plan, Deployment Plan

5

ГЛАВНИ ФУНКЦИОНАЛНОСТИ НА СИСТЕМАТА

Доставяне на удостоверителна услуга идентификация удостоверение на самоличността (aвтентикация) проверка на правата за достъп (оторизация)

Издаване и управление на електронни белези за идентификация за граждани (Собственик на еИ) за юридически лица (Потребител еИ) за системни потребители

Възможност за изграждане на организационна структура (услуги, функции, права, роли) от доставчиците на услуги

Възможност за добавяне на допълнителни данни за гражданите в три различни нива на достъп

6

БИЗНЕС РОЛИ Граждани (СеИ) Юридически лица (ПеИ) Служители на Регистриращия орган (РО) Служители на Сертифициращия орган

(СО)

7

USE-CASE МОДЕЛ – ОБЩ ИЗГЛЕД

8

USE-CASE МОДЕЛ – АДМИНИСТРИРАНЕ НА СЕИ

9

USE-CASE МОДЕЛ – АДМИНИСТРИРАНЕ НА ПЕИ

10

USE-CASE МОДЕЛ – АДМИНИСТРИРАНЕ НА УСЛУГИ

11

USE-CASE МОДЕЛ – АДМИНИСТРИРАНЕ НА ФУНКЦИИ

12

USE-CASE МОДЕЛ – АДМИНИСТРИРАНЕ НА РОЛИ

13

USE-CASE МОДЕЛ – АДМИНИСТРИРАНЕ НА ДОПЪЛНИТЕЛНИ ДАННИ

14

USE-CASE МОДЕЛ – АДМИНИСТРИРАНЕ НА СИСТЕМАТА

15

БИЗНЕС ПРОЦЕСИ (1) Вход в системата Бизнес процеси за СеИ

Издаване на еИ Издаване на нова еИ от СО

Активиране на еИ Деактивиране на еИ Закриване на еИ Закриване на еИ при

изтичане на давност

16

БИЗНЕС ПРОЦЕСИ (2) Бизнес процеси за ПеИ

Добавяне на доставчик на услуги Добавяне на нов

доставчик на услуги Получаване на ПеИ от

доставчик Активиране на

доставчик на услуги Деактивиране на ПеИ Закриване на ПеИ Закриване на ПеИ при

изтичане на давност Определяне на достъп

до ЛД Добавяне на роля

Актуализиране на роля Изтриване на роля Добавяне на функция Преглед и изтриване

на функция Добавяне на услуга Актуализиране на

услуга Изтриване на услуга Добавяне на

допълнителни данни Актуализиране на

допълнителни данни Изтриване на

допълнителни данни

17

БИЗНЕС ПРОЦЕС „ВХОД В СИСТЕМАТА“

BPMN Вход в системата

«Lane» Система«Lane» Потребител на системата

Въвеждане напотребителско име

и парола

Извеждане на съобщение загрешно въведени потребителско

име и/или парола

Проверка застатуса на

потребителя

Извеждане насъобщение зазакрито eID

Отваряне наначална страница

за СеИ

Отваряне наначална страница

за ПеИ

Проверка за видапотребител

Отваряненаначална страница

за СО

Отваряне наначална страница

за РО

Отваряне наначална страница

за администриранена системата

грешно въведени потребиелскоиме и/или парола

коректно въведенипотребителско име и парола

статус - закрит

стаус: нов,активен,неактивен

вход на ПеИ

служител на РО

СеИ или ПеИ

вход на СеИ

администратор

служител на СО

18

БИЗНЕС ПРОЦЕС „ИЗДАВАНЕ НА ЕИ“BPMN Издаване на eID

«Pool» С

истема ЕИ

«Lane» Служител на СО«Lane» Система

«Pool» С

еИ

Заявка за издаванена eID

Извеждане насъобщение за нужнитедокументи и начинът

на попълване

Извеждане насъобщение за вече

издадено eID налицето

Издаване на новоeID от СО

Извеждане на съобщениеза причините порадикоито не може да се

издаде eID

Закриване насъществуващо eID

За изпълнение на чиновническите операции се изисква успешен вход от страна на чиновника в системата.

Пускане на 5 годишен таймер за давност

Проверка надокументи

не пълни документинужни за издаването

има издаеноeID на лицето

няма здадено eID и имаправа за издаване

няма права заиздавне на eID отказ от

преиздаванена eID

искане запреиздаванена eID

19

БИЗНЕС ПРОЦЕС „ЗАКРИВАНЕ НА ЕИ“ BPMN Закриване на eID

«Pool» Система ЕИ

«Lane» Система

«Pool» СеИ

«Lane» Служител на СО«Lane» С

еИ браузър

Промяна настатуса на закритоeID и извеждане на

съобщение

Извеждане насъобщение, че не еоткрито търсеното

eID

Избор на eID зазакриване

Описване напричините за

закриване на eID

Искане за закриване eID от правоимащ орган

Проверка засъществуащо eID

Отнемане на правана собственика заиздаване на ново

eID

Закриване при преиздаване на eID

Подаване назаявление за

закриване на eID

Закриване от собственика на ЕИ през браузъра

Закриване на ЕИ

eID еоткрито

не е открито eIDили вече е билозакрито

20

БИЗНЕС ПРОЦЕС „ОПРЕДЕЛЯНЕ НА ДОСТЪП ДО ЛД“

BPMN Определяне на достъп до ЛД

«Lane» ПеИ

браузър

«Pool» Систем

а за електронна идентификация

«Lane» Систем

а

«Pool» ПеИ

«Lane» Служ

ител на РО

Подаване наискане за достъпдо лични данни

Разглеждане наискането за достъп

до ЛД от РО

Изпращане на съобщениес причините за отказ на

достъп до ЛД от искането

Изпращане на съобщениес информация за

ползването на исканитеЛД

Даване на права задостъп на

доставчика доисканите ЛД

Отхвърляне наискането

Искане за достъпдо лични данни

одобряванена искането

отказ наискането

21

БИЗНЕС ПРОЦЕС “ДОБАВЯНЕ НА РОЛЯ”

BPMN Добавяне на роля

Актуализиране направо за функция

Актуализиране народтелска роля«Lane» ПеИ

Добавяне на имена ролята

Добавяне наролята

Добавяне наописание на

ролята

добавяне наописание

няма да се променят прават по функциите

няма да се добавят род. роли

определяне надостъп до функция

ще се добавирод.роля

няма да се добавя описание

22

БИЗНЕС ПРОЦЕС „ИЗТРИВАНЕ НА РОЛЯ“

BPMN Изтриване на роля

«Lane» ПеИ браузър«Lane» Система

Избор на роля заизтриване

Извеждане насъобщене за

грешно избранароля

Изтриване наролята

Извеждане насъобщение че

ролята не може дабъде изтрита

ролят енаследена

ролята не сенаследява

изтрии ако несе ползва

изтриинавсякъде

не енамеренаролята

намеренароля

23

СОФТУЕРНА АРХИТЕКТУРА Стандартно трислойно приложение на базата на JavaEE Разположено върху Google App Engine (servlet 2.5

container) Нерелационно хранилище за бази данни Google Data

Store Service Достъп на потребителите на системата се осъществява

чрез HTTPS, WSDL, SOAP, SAML протокилите Java Server Faces (JSF) – Mojarra (Sun JSF RI) Unified Expression Language (EL) – JBoss EL 2.0 Web Service Security (WSS) – Apache WSS4J 1.6.9 Security Assertion Markup Language (SAML) – Shibboleth

opensaml 2.5.1 Система за контрол на версиите – SVN Интегрирана среда за разработка – Eclipse Juno

24

МОДЕЛ НА РАЗПОЛАГАНЕТО

25

КОМПОНЕНТЕН МОДЕЛ

26

БАЗА ДАННИ Анотации за класовете и полетата в тях,

показващи начина на съхранение в базата данни и начина на валидация

Единен интерфейс за валидиране на полета по време на JSF фазата Validation, както и по време на запис на данните в базата данни

21 унифицирани и специализирани валидатори

27

РЕАЛИЗАЦИЯ (1) Криптирана комуникация (HTTPS) login, loginSAML, невъзможност за логин с

повече от две сесии, CAPTCHA Права за достъп на отделните типове

потребители до отделните страници Меню според типа на потребителя Комуникация между уеб страниците Външен конфигурационен файл Уеб услуги Access Person Data, Manage Structure

Username, SAML Artifact Resolver

28

РЕАЛИЗАЦИЯ (2) SAML

29

РЕАЛИЗАЦИЯ (3)

stm SecurityToken

NEW

ACTIVE

INACTIVE

CLOSEDЗакриване по исканена собственика

Не променяне на паролатав срок от 1 година

Промяна напаролата

Издаване Получаване от собственика

Неполучаванеот собственика

Закриване по исканеот собственика

• Диаграма на състоянията за белег на идентификация

30

РЕАЛИЗАЦИЯ (4) Сетртифициращ орган

Администриране на СеИ Преглед на СеИ

Регистриращ орган Администриране на ПеИ Преглед на ПеИ Промяна на достъпа на ПеИ до лични данни на

СеИ

31

РЕАЛИЗАЦИЯ (5) Организационна стуктура и данни за ПеИ

Добавяне, администриране и преглед на услуги Добавяне, администриране и преглед на финкции Добавяне, администриране и преглед на роли Добавяне, администриране и преглед на допълнителни

данни Искане за добавяне на глобални данни Преглед на направени искания за глобални данни Заявяване на достъп до глобални данни

Администриране на системата Управление на системен потребител Преглед на системен потебител Управление на полета с глобални данни Изготвяне на справки

32

РЕАЛИЗАЦИЯ (6) Изготвяне на страниците - XHTML Изготвяне на дизайна – цветова палитра на

сайта:

JavaScript, jQuery Ajax

33

НЕСВЪРШЕНА РАБОТА ПО РЕАЛИЗАЦИЯТА Модул за Изготвяне на справки не е описан

и реализиран На някои страници Ajax не работи CSS и JavaScript не е минифициран Следните контролери не са реализирани:

Преглед на заявки за глобални данни Управление на достъп до полета с глобални

данни

34

ТЕСТВАНЕ (1) администриране на

функции администриране на

роли администриране на

допълнителни данни администриране на

услуги преглед на функции преглед на роли преглед на

допълнителни данни

преглед на услуги добавяне на функция добавяне на роли добавяне на

допълнителни данни добавяне на услуги заявяване на достъп

до глобални данни искане за добавяне

на глобални данни

35

USE CASE – АДМИНИСТРИРАНЕ НА РОЛИ

36

BUSINESS PROCESS MODEL – ДОБАВЯНЕ НА РОЛЯ

37

Обект на тестване: Администриране на роля / Добавяне на роля ТСл №: 09P/01

Тип на тестване: Функционално Начин на тестване:

Ръчно

Начални изисквания: Потребителят трябва да е влязал в профила сиНасоченост на тестването: Позитивен

№ Действие Очаквван резултат Реален резултат

1 Натискане на бутон „Добавяне на роля”

Отваря се диалогов прозорец с празни полета

2 ТСл №: 09/02ТСл №: 09/03ТСл №: 09/04ТСл №: 09/05

Системата маркира коректно въведени данни

3 Потребителят на еИ натиска бутона „добавяне на нови роли”

Новата роля е добавена успешно

Очакван краен резултат: Успешно добавена роляРеален краен резултат: Изготвил и изпълнил: Ивелин Стефанов

38

Обект на тестване: Администриране на роля / Добавяне на описание на роля

ТСл №: 09P/02

Тип на тестване:

Функционално Начин на тестване:

Ръчно

Начални изисквания: Потребителят трябва да е влязал в профила си

Насоченост на тестването: Позитивен№ Действие Очаквван резултат Реален резултат

1 Потребителят на еИ добавя описание на ролята в полето

Описанието е коректно въведено въведено

Очакван краен резултат: Успешно е добавено уписание на ролята

Реален краен резултат: Изготвил и изпълнил: Ивелин Стефанов

39

Обект на тестване: Администриране на роля / Добавяне на име на роля ТСл №: 09P/03

Тип на тестване:

Функционално

Начин на тестване: Ръчно

Начални изисквания: Потребителят трябва да е влязал в профила сиНасоченост на тестването: Позитивен

№ Действие Очаквван резултат

Реален резултат

1 Потребителят на еИ добавя име на ролята в празното поле

Името е въведено коректно

Очакван краен резултат: Успешно е добавено име на ролятаРеален краен резултат: Изготвил и изпълнил: Ивелин Стефанов

40

Обект на тестване: Администриране на роля/ Актуализиране на права за функции

ТСл №: 09P/04

Тип на тестване: Функционално

Начин на тестване: Ръчно

Начални изисквания: Потребителят на еИ да е влязъл в профила сиНасоченост на тестването: Позитивен

№ Действие Очаквван резултат Реален резултат

1 Потребителят натиска бутона „Ибор на роля за промяна”

Ролята е коректна и се отваря нов прозорец с данните на ролята

2 Потребителят променя правата за функциите

Системата проверява дали промяната е коректна

3 Натиска бутона „Запази промените”

правата за функции са коректно актоализирани

Очакван краен резултат: Коректно е актуализирани права за функцииРеален краен резултат: Изготвил и изпълнил: Ивлин Стеданов

41

Обект на тестване: Администриране на роля/ Актуализиране на родителски роли ТСл №: 09P/05

Тип на тестване: Функционално

Начин на тестване: Ръчно

Начални изисквания: Потребителят на еИ да е влязъл в профила сиНасоченост на тестването: Позитивен

№ Действие Очаквван резултат Реален резултат

1 Потребителят натиска бутона „Ибор на роля за промяна”

Ролята е коректна и се отваря нов прозорец с данните на ролята

2 Потребителят променя родителската ролята

Системата проверява дали промяната е коректна

3 Натиска бутона „Запази промените”

Род. роля е коректно актоализирана

Очакван краен резултат: Коректно е актуализирана род. роляРеален краен резултат: Изготвил и изпълнил: Ивлин Стеданов

42

Обект на тестване: Администриране на роля ТСц №: 09 G/01Тип на тестване: Функционално Начин на тестване: Ръчно

Начални изисквания: Потребителя на еИ да е влязъл в профила си№ Тестов случай

№Име на тестов случай Резултат [pass/fail]

1 ТСл №: 09P/01 Изтриване на роля

2 ТСл №: 09N/01 Изтриване на роля - негативен

3 ТСл №: 09P/02 Избор на роля за изтриване

4 ТСл №: 09N/02 Избор на роля за изтриване - негативен

5 ТСл №: 09P/03 Съобщение за грешно избрана роля

6 ТСл №: 09N/03 Съобщение за грешно избрана роля - негативен

7 ТСл №: 09P/01 Добавяне на роля – попълнени са всички полета

8 ТСл №: 09N/01 Добавяне на роля - негаривен

9 ТСл №: 09P/02 Описание на роля

10 ТСл №: 09N/02 Описание на роля - негативен

11 ТСл №: 09P/03 Добавяне на име на роля

12 ТСл №: 09N/03 Добавяне на име на роля - негативен

13 ТСл №: 09P/04 Актуализиране на права за функции

14 ТСл №: 09N/04 Актуализиране на права за функции - негативен

15 ТСл №: 09P/05 Актуализиране на родителски роли

16 ТСл №: 09N/05 Актуализиране на родителски роли - негативен

Краен резултат [pass/fail]: Изготвил и изпълнил: Ивелин Стефанов

43

ТЕСТВАНЕ (2) Функционалност

ръчно SoapUI

Производителност BlazeMeter (включва JMeter) LoadUI Yslow Low Orbit Ion Cannon

Сигурност OWASP Zed Attack Proxy

44

ФУНКЦИОНАЛНО ТЕСТВАНЕ

Нисък

21%

Среден

30%

Висок

34%

Много

висок

15%

Открити дефекти споредприоритета им

45

ФУНКЦИОНАЛНО ТЕСТВАНЕ

Активни18%

Отстранени

82%

Открити дефекти споредсъстоянието им

46

ФУНКЦИОНАЛНО ТЕСТВАНЕ

Нисък

22%

Среден50%

Висок28%

Активни дефекти споредприоритета им

47

ТЕСТВАНЕ С НАТОВАРВАНЕ

48

ТЕСТВАНЕ С НАТОВАРВАНЕ

49

ТЕСТВАНЕ С НАТОВАРВАНЕ

50

СТРЕСОВО ТЕСТВАНЕ

51

ЕКСТРЕМНО СТРЕСОВО ТЕСТВАНЕ

52

АТАКА ЗА ОТКАЗ НА УСЛУГА Натоварване 99 заявки в секунда Продължителност 5 минути Времето за зареждане на страница бе

повишено на 25-30 секунди

Системата не притежава автоматично блокиране на прекалено голямо натоварване от един хост

53

ТЕСТВАНЕ НА ПРОИЗВОДИТЕЛНОСТ НА УЕБ УСЛУГИ

Заявки в секундаСредно време за отговор

54

АНАЛИЗ НА УЕБ ПРОИЗВОДИТЕЛНОСТ Общ резултат 88/100

Съдържание – ОК Cookies – ОК CSS – OK Изображения – ОК JavaScript – OK Сървър – проблеми с нисък приоритет

55

ТЕСТВАНЕ НА СИГУРНОСТ Разнообразен набор от

атаки Проблеми с много

нисък приоритет

1 проблем със средновисок приоритет - отстранен

Path traversalRemote file inclusionURL redirector abuseServer side includeCross site scriptingSQL injectionDirectory browsingSession ID in URL rewriteSecure page browser cacheExternal redirectCRLF injectionParameter tampering

56

НЕСВЪРШЕНА РАБОТА ПО ТЕСТВАНЕТО Някои от инструментите предвидени в

Главен план за тестване не са използвани Не е проведено пълноценно тестване на

Internet Explorer

57

ДРУГИ СТАТИСТИКИМетрика Текущ

проектПредишен проект

Брой Java класове 155 142Брой таблици в БД 20 33Брой атрибути в БД 111 190Брой уеб страници 30 41Брой уеб услуги 3 3Брой операции в уеб услугите 26 12Реда Java код (без празни редове и коментари)

14442 19884

Реда Java коментари 5813 2230Реда xhtml код 3703 6964Брой „качвания“ на SVN сървъра 501 322Брой тестови сценарии 30 18

58

БРОЙ „КАЧВАНИЯ“ НА SVN СЪРВЪРА

59

БРОЙ „КАЧВАНИЯ“ НА SVN СЪРВЪРА (2)

60

БРОЙ ПРОМЕНЕНИ РЕДОВЕ В КОДА

61

ВЪЗМОЖНИ ПОДОБРЕНИЯ Използване на асиметрични ключове и

сертификати за удостоверяване на самоличността на потребителите (без тези неща сесията на потребителя може да бъде открадната)

Недопускане на replay атаки Поддържане на регистър с всички услуги

налични за ползване от гражданите (СеИ) Запускане на процеси почистващи базата данни

от вече невалидни записи Използване на Memcache услугата, която ще

ускори работата на системата и ще намали броя на запитванията към базата данни

Използване WSS във всички услуги

62

ПРОБЛЕМИ Лоша комуникация между членовете на

екипа Липса на достатъчно мотивация за работа Закъсняло предоставяне на работеща

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

за тестване

63

ДЕМОНСТРАЦИЯ