Posibniki.com.ua Інформатика Корпоративні інформаційні системи 3.2. ТЕХНОЛОГІЯ ДОСТУПУ, ЗБЕРІГАННЯ ТА АДМІНІСТРУВАННЯ ДАНИХ У КІС


< Попередня  Змiст  Наступна >

3.2. ТЕХНОЛОГІЯ ДОСТУПУ, ЗБЕРІГАННЯ ТА АДМІНІСТРУВАННЯ ДАНИХ У КІС


Широкий розвиток КІС поставив на порядок денний проблему ефективного доступу як до локальних баз даних, так і дорозподілених на значній території. У недалекому минулому розробники прикладного програмного забезпечення для доступу до баз даних у середовищі СУБД фірми Microsoft використовували

дві об’єктні технології Microsoft: Data Access Objects (DAO) — для доступу до локальних баз даних і Remote Data Objects (RDO)

— для доступу до віддалених баз даних. У них було реалізовано два різні програмні механізми, що пов’язувалося з необхідністю оптимізувати виконання двох окремих завдань — доступу до локальних і віддалених БД відповідно. Подальший розвиток інформаційних систем зажадав створення технологій, які б забезпечували єдиний підхід під час роботи з базами даних різних класів. Для розв’язання цієї проблеми фірма Microsoft розробила нову технологію доступу до локальних і віддалених даних — ActiveX Data Objects (ADO), яка є складовою архітектури Microsoft Universal Data Access (MUDA). Розроблена Microsoft технологія ActiveX призначена для надання доступу до Windows-додатків через Internet, однак використовується здебільшого в інтрамережах з міркувань безпеки.

Підґрунтям MUDA OLE DB (Object Linking and Embedding Data Base)

— низькорівневий програмний СОМ-інтерфейс доступу до даних, створений у процесі розвитку ідеології відкритих систем на базі ODBC (Open Data Base Connectivity). Утім, якщо ODBC призначений для роботи з реляційними базами даних (Access, DBF, SQL та ін.), то OLE DB пропонує одноманітний метод доступу до даних, що зберігаються в різних джерелах інформації, зокрема в нереляційних БД (наприклад, у звичайних лінійних файлах, у папках систем електронної пошти), забезпечуючи при цьому підтримку роботи з наборами даних та ієрархічними наборами записів. Постачальником таких даних може бути будь-яке джерело, зокрема й додатки, написані відповідно до специфікацій OLE DB. Наприклад, доступ до баз даних ODBC виконується за допомогою OLE DB Provider for ODBC.

АDО являє собою прикладний об’єктний інтерфейс для корпоративних інформаційних систем вищого рівня, ніж DAO i RDO. Він спрощує розробникам КІС, які використовують мови високого рівня, доступ до засобів OLE DB. Від 1998 року використовують модернізований варіант АDО 2.0 (від 2000 року — АDО 2.1), який було вперше включено до складу Visual Studio 6.0.

Отже, в розпорядженні розробників прикладних програмних засобів на цей час є три різні технології роботи з базами даних: DAO, RDO і АDО, але в перспективі дві перші поступово будуть витіснені АDО, оскільки Microsoft буде вдосконалювати й оновлювати тільки модель АDО.

Нова версія АDО 2.1 значно розширила можливості попередньої версії АDО 2.0 і містить більший набір нових функцій і кілька вдосконалених функцій з останніх випусків АDО. Окрім модернізованого варіанта основної бібліотеки до складу АDО 2.1 входить додаткова бібліотека ActiveX Data Objects Extensions for DDL and Security, або скорочено ADOX, яка надає розробникам широкий набір інструментів для отримання доступу до структури, моделі безпеки і процедур, що зберігаються в базі даних. ADOX працює із драйверами SQL Server i ODBС OLE DB. Модернізований варіант основної бібліотеки також виконує низку нових функцій, зокрема поліпшений індексований пошук, можливості роботи зі зв’язаними таблицями й конфігурування ієрархічних даних. Версія АDО 2.1 постачається спільно із SQL Server 7.0, 2000 і Access 2000.

Доступ до бази даних від прикладної програми або користувача виконується зверненням до клієнтської частини системи. Як основний інтерфейс між клієнтською та серверною частинами найчастіше використовується мова SQL.

Сервери баз даних, інтерфейс яких ґрунтується суто на мові SQL, мають як переваги, так і вади.

Основна перевага — це стандартність інтерфейсу. Клієнтська частина будьякої SQL-орієнтованої СУБД може працювати з будь-яким SQL-сервером незалежно від того, хто є виробником програмних засобів й обчислювальної техніки.

Вадою є те, що за такого високого рівня інтерфейсу між клієнтською та серверною частинами на стороні клієнта працює дуже мало програм СУБД. Це можна вважати нормальним, якщо на стороні клієнта використовується малопотужна робоча станція. Але якщо клієнтський комп’ютер достатньо потужний, тоді на нього доцільно покласти більше функцій управління базами даних, розвантаживши в такий спосіб сервер, який є вузьким місцем усієї КІС. З іншого боку, якщо різниця в потужності сервера і клієнтської робочої станції завелика, варто перенести більшу частину прикладної програми на сторону сервера.

Одним із перспективних напрямів удосконалення доступу до даних є гнучке конфігурування системи, за якого розподіл функцій між клієнтською та серверною частинами системи можливий завдяки використанню механізму віддалених процедур. У тексті програми віддалений виклик процедури нічим не відрізняється від віддаленого виклику, тож теоретично будь-який компонент системи може розміщуватися і на стороні сервера, і на стороні клієнта. Практично нині на стороні клієнта працює лише таке програмне забезпечення, яке не має безпосереднього доступу до баз даних, а звертається для цього до сервера з використанням мови SQL.

Під час забезпечення Web-доступу до наявних можливі альтернативні способи технологічних й організаційних рішень. Практика використання Web-технологій для доступу до баз даних надає широкий спектр технологічних вирішень, які по-різному пов’язані між собою. Вибір конкретних рішень для забезпечення доступу залежить від специфіки конкретної СУБД і низки інших чинників, таких як існування БД, Web-доступ до яких має здійснюватися з мінімальними додатковими витратами; наявність спеціалістів, здатних із мінімальними витратами опанувати відповідну гілку технологічних рішень тощо.

Використовують три основні варіанти Web-доступу до баз даних.

За цього варіанта зміст БД переглядає спеціальна програма-перетворювач, яка створює множину файлів — низку HTML-документів. Отримані файли копіюються на WWW-сервер. Доступ до них здійснюється як до статичних гіпертекстових документів сервера. Цей варіант характеризується мінімальними початковими витратами. Він ефективний у разі використання невеликих масивів даних простої структури з нечастим оновленням, а також у разі занижених вимог до актуальності даних, що доставляються за допомогою WWW. Крім того, для нього характерна цілковита відсутність механізму пошуку, але можливе використанням індексування.

Як перетворювач може використовуватися програмне забезпечення, яке автоматично або напівавтоматично генерує статичні документи. Програма-перетворювач може бути або самостійно розробленою, або інтерпретованим засобом з-поміж наявних на ринку різноманітних програм типу генераторів звітів.

У цьому варіанті доступ до БД здійснюється за допомогою спеціальної CGI (Common Gateway Interface) — програми, що запускається Web-сервером у відповідь на запит Web-клієнта. Ця програма, обробляючи запит, переглядає зміст БД і створює вихідний HTML-документ, який повертається клієнту (рис. 3.1). HTMLдокумент

Webклієнт Webсервер

Обробник CGI

БД

Запит

Запуск

Пошук

Дані

Рис. 3.1. Схема динамічного створення гіпертекстових документів

Використання цього варіанта ефективне для великих баз даних зі складною структурою й у разі необхідності підтримки операцій пошуку, а також за частого оновлення і неможливості синхронізації перетворення БД на статичні документи з оновленням вмісту БД. За цього варіанта можна вносити зміни до БД за допомогою WWW-інтерфейсів.

Для реалізації такої технології треба використовувати взаємодію Web-сервера з програмами CGI, що запускаються. Вибір програмних засобів для реаліта інтегровані засоби типу генераторів звітів. Під час використання сучасних реляційних СУБД із внутрішніми мовами програмування можливе використання цих мов для генерації документів.

зації цього варіанта вельми широкий. Це мови програмування (C++, Perl, Ada) зації цього варіанта вельми широкий. Це мови програмування (C++, Perl, Ada)

До вад варіанта Web-доступу до БД за допомогою CGI можна віднести тривалий час оброблення запитів, необхідність постійного доступу до основної бази даних, додаткове завантаження засобів підтримки БД, пов’язане з обробленням запитів від Web-сервера. SQL

Цей варіант є найудалішим стосовно сучасних концепцій сховищ даних. В його основі лежить періодичне завантаження даних у сховище з традиційних СУБД. Для оброблення різноманітних запитів, зокрема й від Web-сервера, використовується проміжна БД (інформаційне сховище) з високою продуктивністю. Інформаційне наповнення сховища даних здійснюється спеціалізованим програмним забезпеченням на основі вмісту основних баз даних і охоплює два етапи — перевантаження даних з основних БД до сховища даних (СД) і оброблення запитів (рис. 3.2 і 3.3 відповідно).

Рис. 3.2. Перевантаження даних до сховища

Рис. 3.2. Перевантаження даних до сховища

Рис. 3.3. Оброблення запитів

Рис. 3.3. Оброблення запитів

Цей варіант позбавлений усіх вад попередньої схеми. Крім того, після встановлення синхронізації даних інформаційного сховища з основними БД можливе перенесення користувацьких інтерфейсів на інформаційне сховище, що істотно підвищить надійність і продуктивність доступу й дасть змогу організувати розподілені автоматизовані робочі місця.

Основою підвищення продуктивності оброблення Web-запитів і різкого підвищення швидкості розроблення Web-інтерфейсів є використання внутрішніх мов СУБД інформаційного сховища для створення гіпертекстових документів.

Для перевантаження даних з основної бази до сховища можна використовувати мови програмування, інтегровані засоби, а також спеціалізовані засоби перевантаження, що постачаються із SQL-сервером, і продукти підтримки інформаційних сховищ.

Зауважимо, що провідні розробники СУБД останнім часом інтенсивно шукають і пропонують на ринок постреляційні рішення (POSTGRES), чітко розуміючи, що можливості домінантної нині реляційної ідеології майже вичерпалися. Найімовірніше, у найближчі роки відбудеться масовий відхід від реляційної побудови баз даних і перехід до об’єктно-орієнтованих СУБД.

Напрям POSTGRES належить до числа так званих постреляційних систем, тобто до наступного етапу в розвитку реляційних СУБД.

Як відомо, реляційним СУБД притаманна деяка обмеженість під час використання в нетрадиційних галузях, де потрібні гранично складні структури даних. Іншою вадою реляційних баз даних є неможливість адекватного відображення семантики предметної галузі. Крім того, суто реляційна модель і реалізовані на ній SQL-сервери потребують потужного устаткування й далеко не завжди дають змогу провести оптимізацію запитів, тим паче, забезпечити роботу з постійно оновлюваними даними в реальному масштабі часу. Тому сучасні дослідження в галузі постреляційних систем переважно присвячені усуненню зазначених вад і наданню їм якостей, яких немає у більшості реляційних СУБД.

Такими якостями є, наприклад, повнота системи типів, підтримка ієрархії й успадкування типів, можливість управління складними об’єктами тощо.

Першу постреляційну СУБД — POSTGRES 95 — було спроектовано й розроблено в Каліфорнійському університеті Берклі під керівництвом відомого спеціаліста в галузі баз даних професора Стоунбрейкера. СУБД POSTGRES 95 зберігає основні якості реляційних СУБД, але на відміну від них підтримує темпоральну модель зберігання і доступу до даних. Тобто для будь-якого об’єкта даних, створеного в момент часу t

0 і знищеного в момент часу t

1 , у БД зберігаються і доступні користувачам усі його стани в часовому інтервалі (t

1 , t

0 ).

Нагадаємо, що звичайні БД зберігають миттєвий знімок моделі предметної галузі тож будь-які зміни в момент часу t деякого об’єкта приводять до недосяжності цього об’єкта в попередній момент часу. Незважаючи на те, що в більшості розвинених СУБД попередній стан об’єкта зберігається в журналі змін, до нього нема доступу зі сторони користувача.

У зв’язку з цим у СУБД POSTGRES 95 переглянуто механізм журналізації змін, відкатів транзакцій і відновлення БД після збою. Особливість системи управління пам’яттю полягає в тому, що замість звичайної журналізації миттєво забезпечується коректний стан БД. Система управління пам’яттю також зберігає історичні дані, відповідні можливості роботи з якими закладено в мову POSTQUEL. Запити можуть містити виборку даних як за фіксований час, так і за відповідний інтервал часу.

Одним із основних положень реляційної моделі даних є вимога нормалізації відношень: поля кортежів можуть містити лише атомарні значення. Надання вихідному табличному представленню предметної галузі першої нормальної форми є основним кроком у процесі проектування реляційної БД. У СУБД POSTGRES 95 реалізовано ненормалізовану реляційну модель даних, яка допускає зберігання як елементу кортежу багатовимірних масивів фіксованої та змінної довжини та інших даних, зокрема абстрактних, визначених користувачем типів тощо.

У СУБД POSTGRES 95 реалізовано дві основні можливості доступу до даних:

— за допомогою psgl-інтерфейсу командного рядка командної оболонки Shell;

— із прикладної програми, написаної мовою програмування С або іншою мовою з використанням функцій прикладного інтерфейсу LIBPQ. Psgl — це інтерактивний термінальний монітор, що дає користувачеві змогу формулювати, редагувати й виконувати набори команд-операторів мови POSTQUEL. Інтерфейс командного рядка Psgl зазвичай використовують адміністратори баз даних для створення, модифікації та вилучення відношень, уведення і надання прав новим користувачам тощо. Він доволі зручний для введення великих обсягів інформації у БД і виведення простих звітів. Цей монітор не дає змоги генерувати складні форми звітів, оскільки за його допомогою неможливо розібрати отриманий результат для формування нових запитів. Тому його використання в прикладних програмах досить обмежене. LIBPQ — прикладний програмний інтерфейс СУБД POSTGRES 95. Він представлений набором бібліотечних підпрограм (функцій), які дають змогу клієнт-

ським програмам надсилати запити серверу СУБД і отримувати від нього відповідні результати. Для цього в прикладну програму вносять головний файл бібліотеки LIBPQ-FE.H, вбудовують функції LIBPQ і виконують компіляцію коду програми з бібліотеки POSTGRES 95.

Для здійснення доступу до баз даних POSTGRES 95 з Internet можна використати такі механізми: CGI, Fast CGI, API, Java. Наприклад, АРІ — модуль сервера Apache PHP — підтримує взаємодію з бібліотеками POSTGRES 95, а також два розроблені ODBC-драйвери, Post ODBC i Open Link ODBC, які спрощують розроблення програм-шлюзів. Крім того, досить зручним і простим засобом побудови інтерактивних додатків є CGI (Common Gateway Interface), який не потребує додаткового програмного забезпечення і легкий у застосуванні.

Для зберігання та захисту цілісності даних у КІС часто використовують брандмауери.

Брандмауер — це програмна система або комбінація систем, організаційно оформлена на окремому або кількох комп’ютерах, яка дає змогу розподілити мережу на чи більше частин і реалізувати набір правил, що визначають умови проходження пакетів з однієї частини в іншу.

Як правило, така межа проводиться між локальною мережею підприємства та Internet, хоча її можна провести і в середині локальної мережі підприємства. Тож брандмауер пропускає крізь себе весь потік інформації. Для кожного пакета, що проходить, брандмауер приймає рішення, пропускати його чи відкинути. Щоб брандмауер міг приймати ці рішення, йому необхідно надати відповідний набір правил.

Для підвищення захисту самого брандмауера в операційну систему, під управлінням якої працює брандмауер, вносять відповідні зміни. Ці зміни стосуються як ядра ОС, так і відповідних файлів конфігурації; деякі брандмауери працюють лише в однокористувацькому режимі. Багато з них мають систему перевірки цілісності програмних кодів. При цьому контрольні суми програмних кодів зберігаються в захищеному місці та порівнюються під час старту програми, щоб запобігти підміні програмного забезпечення.

Усі брандмауери поділяють на три основні типи:

1. Пакетні фільтри (packet filter).

2. Сервери прикладного рівня (application gateways).

3. Сервери на рівні з’єднання (circuit gateways).

Усі ці типи можуть бути реалізовані в одному брандмауері.

Пакетні фільтри. Брандмауери з пакетними фільтрами приймають рішення про те, пропускати пакет чи відкинути його, переглядаючи ІР-адреси, прапори або номери ТСР-портів у заголовку цього пакета. Як відомо, ІР-адреса і номер порту — це інформація мережевого і транспортного рівнів відповідно, але пакетні фільтри використовують також інформацію прикладного рівня, бо всі стандартні сервіси TCP/IP з’єднуються з відповідним номером порту.

Позитивними якостями пакетних фільтрів є: відносно невелика вартість, гнучкість у визначенні правил фільтрації, а також незначна затримка під час проходження пакетів.

Вади брандмауерів з пакетними фільтрами такі: локальна мережа маршрутизується (видима) з Internet; у разі порушення працездатності брандмауера всі комп’ютери за ним стають повністю незахищеними або недоступними; правила

фільтрації пакетів складні для опису, потрібне досконале знання технології TCP i UDP; аутентифікацію з використанням ІР-адреси можна обманути застосуванням ІР-спуфінга (коли атакувальна система видає себе за іншу, використовуючи її ІР-адресу); відсутність аутентифікації на користувацькому рівні.

Сервери прикладного рівня. Брандмауери із серверами прикладного рівня використовують сервери конкретних сервісів (TELNET, FTP, Proxy Server тощо), що запускаються на брандмауері та пропускають крізь себе весь потік інформації, що належить до даного сервісу. Отже, між клієнтом і сервером виникають два з’єднання — від клієнта до брандмауера і від брандмауера до місця призначення.

Використання серверів прикладного рівня має низку переваг. По-перше, це дає змогу сховати від зовнішніх користувачів структуру локальної мережі, включаючи інформацію в заголовках поштових пакетів або служби доменних імен (DNS). По-друге, є можливість проведення аутентифікації (підтвердження ідентичності користувача) на користувацькому рівні.

Для опису правил доступу використовуються такі параметри, як назва сервісу, ім’я користувача, допустимий часовий діапазон використання сервісу, комп’ютери, з яких можна користуватися сервісом, схеми аутентифікації. Сервери протоколів прикладного рівня дають змогу забезпечити найвищий рівень захисту, оскільки взаємодія із зовнішнім світом реалізується через невелику кількість прикладних програм, що цілковито контролюють весь вхідний і вихідний потік інформації.

Переваги серверів прикладного рівня такі: локальна мережа невидима з Internet; у разі порушення роботи брандмауера пакети перестають проходити через нього, тому не виникає загрози для машин, які він захищає; захист на рівні прикладних систем дає змогу здійснювати більшу кількість додаткових перевірок, знижуючи в такий спосіб імовірність злому із використанням дірок у програмному забезпеченні; за допомогою аутентифікації на користувацькому рівні може бути задіяна система негайного попередження про спробу злому.

Вадами цього типу є: вища вартість системи та нижча продуктивність порівняно з пакетними фільтрами, неможливість використання протоколів RPC i UDP.

Сервери на рівні з’єднання. Сервер на рівні з’єднання являє собою транслятор ТСР з’єднання. Користувач утворює з’єднання з відповідним портом на брандмауері, після чого останній проводить з’єднання з місцем призначення на другій стороні від брандмауера. Під час сеансу транслятор ТСР копіює байти в обох напрямках, діючи як провідник. Як правило, пункт призначення задається заздалегідь, тоді як джерел може бути багато (виконується з’єднання типу «один до багатьох»). Використовуючи різні порти, можна створювати різні конфігурації.

Такий тип сервера дає змогу створювати транслятор для будь-якого визначеного користувачем сервісу, що базується на ТСР, здійснювати контроль доступу до цього сервісу, збирати статистику його використання.

Деякі брандмауери дають змогу організовувати віртуальні корпоративні мережі (Virtual Private Network), тобто об’єднувати кілька локальних мереж, підключених до Internet, в одну віртуальну мережу. Віртуальні корпоративні мережі дозволяють організувати прозоре для користувачів з’єднання локальних

мереж, зберігаючи таємність і цілісність інформації, що передається, шляхом кодування. При цьому під час передавання за допомогою Internet кодуються не лише дані користувача, а й мережева інформація — мережеві адреси, номери портів тощо.

Для підключення брандмауера використовують різні схеми. Наприклад, брандмауер може використовуватися як зовнішній роутер застосуванням типів пристроїв, що забезпечують підключення до зовнішньої мережі. Якщо брандмауер може підтримувати два Internet-інтерфейси (так званий dualhomed брандмауер), найчастіше підключення здійснюється через зовнішній марштрутизатор. Ця схема є найвигіднішою в плані безпеки й надійності захисту, оскільки між зовнішнім роутером і брандмауером є лише один шлях, яким іде весь потік даних, а роутер налаштовується так, що брандмауер є єдиною видимою зовні машиною. Існують схеми, які дають змогу організувати для серверів, що мають бути видимими ззовні, третю мережу. Це забезпечує контроль за доступом до них, зберігаючи необхідний рівень захисту машин в основній мережі. Для підвищення рівня захищеності можна використовувати в одній мережі кілька брандмауерів, розташованих один за одним.

Адміністрування в технології доступу до даних у КІС є одним із ключових аспектів створення ефективної і надійної системи захисту. Помилки при визначенні правил доступу можуть утворити отвір, через який можна зламати систему. Тому у більшості брандмауерів задіяні сервісні утиліти, які забезпечують введення, видалення, перегляд набору правил. Наявність таких утиліт також дає змогу перевіряти на синтаксичні і логічні помилки при введенні й редагуванні правил. Такі утиліти зазвичай дозволяють переглядати інформацію, згруповану за певними критеріями, наприклад все, що стосується конкретного сервісу чи користувача.


< Попередня  Змiст  Наступна >
Iншi роздiли:
3.4. ТЕХНОЛОГІЯ СТВОРЕННЯ СКЛАДНИХ СИСТЕМ ЗА ДОПОМОГОЮ РЕІНЖИНІРИНГУ
ТИРАЖУВАННЯ ДАНИХ У КОРПОРАТИВНИХ ІНФОРМАЦІЙНИХ СИСТЕМАХ
4.2. МОДЕЛІ ТИРАЖУВАННЯ ДАНИХ
4.3. СХЕМИ ТИРАЖУВАННЯ ДАНИХ
РОЗДІЛ 5 КОРПОРАТИВНІ СХОВИЩА ДАНИХ
Дисциплiни

Медичний довідник новиниКулінарний довідникАнглійська моваБанківська справаБухгалтерський облікЕкономікаМікроекономікаМакроекономікаЕтика та естетикаІнформатикаІсторіяМаркетингМенеджментПолітологіяПравоСтатистикаФілософіяФінанси

Бібліотека підручників та статтей Posibniki (2022)