Logistyka - nauka
Logistyka 6/2013
67
Eugenia Busłowska
1
Nowoczesne rozwiązania informatyczne są
coraz częściej wykorzystywane w systemach logi-
stycznych, pozwalając na efektywniejszą i tańszą
produkcję oraz dystrybucję towarów. W każdej
współczesnej, rozwijającej się firmie logistycznej,
konieczne jest koordynowanie wielu źródeł infor-
macji. Każdy dział przedsiębiorstwa, począwszy od
marketingu i planowania oraz zaopatrzenia, po-
przez produkcję, dystrybucję, sprzedaż, gospodarkę
remontową, aż do prac finansowo-księgowych, musi
realizować powierzone mu zadania w odpowiednim
czasie i w odpowiedni sposób. Powszechnym staje
się stosowanie modułowo zorganizowanych syste-
mów informatycznych, zwanych Zintegrowanymi
Systemami Zarządzania (ZSZ) przedsiębiorstwem.
Budowa modułowa systemu pozwala na
wdrożenie tylko tych składników, które z uwagi na
charakter przedsiębiorstwa są niezbędne. Obecnie
wśród strategii funkcjonalnych przedsiębiorstwa na
czoło wysuwa się strategie logistyczne, których ce-
lem jest:
- optymalizacja poziomu zapasów,
- minimalizacja przepływu materiałów i wyrobów,
- zapewnienie wysokiego poziomu obsługi klienta,
- zapewnienie możliwie najniższego kompleksowe-
go, ale zarazem akceptowalnego poziomu kosztów.
[1]
Wymienione strategie logistyczne są realizo-
wane w ZSZ zarówno w produkcji, jak i dystrybucji.
Przedsiębiorstwa produkcyjne jako priorytet sta-
wiają przede wszystkim rachunek kosztów i stero-
wanie procesami produkcji. Ich systemy logistyczne
wymagają odpowiedniej organizacji baz danych.
Z gromadzonych w bazach danych informacji o sta-
nie prac realizowanych przez różne działy korzysta-
1
dr inż. Eugenia Busłowska, Politechnika Białostocka, Wy-
dział Informatyki, 15-351 Białystok, ul. Wiejska 45A, tel.
85-746-90-50, Fax.: 85-746-90-57.
ją różne jednostki organizacyjne przedsiębiorstwa.
Informacje są uaktualniane w czasie rzeczywistym
i dostępne dla wszystkich osób, które ich potrzebu-
ją. Dane stają się aktywem firmy i powinny być bez-
piecznie przechowywane oraz wykorzystywane. [1]
W wielu firmach zabezpieczanie danych pole-
ga na zapewnieniu autoryzacji dostępu i zainstalo-
waniu zapór sieciowych. Są to zabezpieczenia ko-
nieczne, ale niewystarczające niezbędnym jest za-
pewnienie niezawodności w dostępie do danych
oraz stosowanie metod kryptograficznych.
Problematyka bezpieczeństwa danych jest
priorytetem większości instytucji. Najistotniejsza
jest kontrola dostępu do bazy danych i jej obiektów
poprzez nadawanie użytkownikom odpowiednich
uprawnień do wykonywania określonych operacji.
Uprawnienia ograniczają dostęp do danych, możli-
wości zmiany danych lub struktur bazy danych lub
możliwości wykonywania funkcji systemowych.
Przywileje nadaje się pojedynczym lub wszystkim
użytkownikom oraz pełnionym rolom. Uprawnienia
użytkownikom nadaje się w zależności od zajmo-
wanego stanowiska i wykonywanych czynności.
Zawsze jednak odbywa się od nadania minimalnych
uprawnień i stopniowe, według potrzeb, ich rozsze-
rzanie.
Zapewnienie bezpieczeństwa danym oznacza
spełnienie kilku wymagań związanych z właściwo-
ściami systemu bezpiecznego. Bezpieczny system
bazodanowy to taki system, który zapewnia:
- poufność,
- integralność,
- dostępność,
- spójność. [2, 3]
Poufność polega na braku dostępu do danych
dla użytkowników oraz aplikacji, które nie są
uprawnione do jej odczytywania. Klauzulę bezpie-
czeństwa w postaci: ściśle tajne, tajne, poufne nada-
je się danym newralgicznym z punktu widzenia
Wstęp
Zapewnienie bezpieczeństwa danych
Metody zabezpieczania logistycznych baz danych
Logistyka 6/2013
68
Logistyka - nauka
instytucji. Naruszenie ich poufności wiązałoby się
z dużymi kosztami oraz z punku widzenia funkcjo-
nowania instytucji bardzo ryzykowne. [2, 3, 4]
Integralność danych oznacza pewność, że da-
ne nie zostały podmienione, zniekształcone lub
zmodyfikowane bez wiedzy ich właściciela. Stan
danych pozostaje zgodny ze stanem wymaganym
i oczekiwanym przez adresata, do którego są prze-
syłane. Naruszenie integralności następuje przy
nieupoważnionym dostępie, potknięciach i zanie-
dbaniach użytkowników uprawnionych, nieposia-
dających odpowiedniego przygotowania lub prze-
szkolenia. Mogą również być spowodowane awa-
riami sprzętu, zakłóceniami transmisji, błędami
w oprogramowaniu lub wirusami. W systemach
informatycznych integralność danych powinna być
zapewniona podczas przechowywania danych ich
przetwarzania i przesyłania. [2, 3, 4]
Dostępność danych polega na stworzeniu
możliwości ciągłego korzystania z danych dla
wszystkich upoważnionych użytkowników. Dostęp-
ność danych może naruszyć nieupoważniony użyt-
kownik lub upoważniony, przez nieświadome dzia-
łania. Dostępność może być ograniczona również
przez awarie, zakłócenia w transmisji, błędy opro-
gramowania oraz przeciążenia sieci. W systemach
informatycznych główny nacisk kładzie się na
zwiększenie dostępności infrastruktury informa-
tycznej, co optymalizuje koszty. [2, 3, 4]
Spójność dotyczy danych gromadzonych
w bazie danych. Wszelkie zmiany w bazie danych
stanowią proces dyskretny. Wprowadzane, aktuali-
zowane i usuwane informacje muszą spełniać wa-
runki narzucone na dane podczas definicji bazy
danych tak, by baza była zgodna z modelowaną rze-
czywistością. W każdym momencie czasu baza da-
nych znajduje się w pewnym stanie. Stan nazywamy
spójnym, jeżeli wszystkie wartości, które zawiera
baza danych w tym stanie mogą zaistnieć w świecie
rzeczywistym. Warunki spójności mogą być dyna-
micznymi lub statycznymi. Warunki dynamiczne
różnią się od statycznych tym, że pamiętają po-
przedni stan. Zachodzenie warunków spójności
zapewnia poprawność bazy danych. Naruszenie
spójności danych następuje w wyniku semantycznie
niepoprawnych operacji, niewłaściwej synchroniza-
cji działania transakcji współbieżnych lub w wyniku
awarii systemu. [2, 3, 4]
Przez bezpieczeństwo informacji należy ro-
zumieć również zachowanie rozliczalności, auten-
tyczności, niezaprzeczalności i niezawodności. Roz-
liczalność polega na zapewnieniu, że określone
działania użytkownika mogą być przypisane
w sposób jednoznaczny tylko jemu. Inaczej mówiąc
brana jest odpowiedzialność za wykorzystanie sys-
temu informacyjnego. Autentyczność dotyczy użyt-
kowników, procesów, informacji, a polega na
sprawdzaniu tożsamości podmiotów i prawdziwo-
ści zasobów.
Niezaprzeczalność oznacza brak możliwości
zaprzeczenia swego uczestnictwa w całości lub
w części wymiany danych przez jeden z podmiotów
uczestniczących w tej wymianie.
Niezawodność gwarantuje spójność danych
i systemu oraz oczekiwane jego zachowanie i spo-
dziewane wyniki. [2, 3, 4]
Integralność baz danych polega na konieczno-
ści przechowywania bieżących informacji o prze-
chowywanym fragmencie świata rzeczywistego.
Przykładowo, jeśli chcemy zachować integralność to
musimy zadbać, aby np. w przypadku przeniesienia
produktu z jednego magazynu do drugiego w obu
nastąpiła zmiana. W wydającym magazynie należy
usunąć wpis o produkcie w tabeli stanu, a w przyj-
mującym magazynie należy dodać wpis do tabeli.
[5]
Więzy integralności to arbitralnie określone
warunki, które muszą być spełnione poprzez pe-
wien podzbiór danych w bazie. Warunki te muszą
pozostać prawdziwe przy każdej operacji modyfika-
cji w bazie danych. Każda operacja naruszająca te
więzy musi zostać anulowana. Najczęściej kontro-
lowaniem więzów integralności zajmuje się system
zarządzania bazą danych. Więzy zwane deklara-
tywnymi lub statycznymi są stosunkowo łatwe do
tworzenia i zarządzania. Do tej grupy należą ograni-
czenia narzucane na zestaw wartości dopuszczal-
nych w poszczególnych kolumnach lub wartości
domyślnych oraz reguły dotyczące wartości w atry-
butach bieżącej relacji lub różnych relacjach. Więzy
proceduralne (dynamiczne) pozwalają na oprogra-
mowanie skomplikowanych zależności i reguł biz-
nesowych. Do tej kategorii należą: procedury prze-
chowywane, wyzwalacze, kod innych warstw apli-
kacji (poza warstwą bazy danych). [6]
Więzy integralności w ochronie danych
Logistyka - nauka
Logistyka 6/2013
69
Wyzwalacze bazodanowe są wygodnym spo-
sobem realizowania zaawansowanych więzów inte-
gralności na poziomie bazy danych, bez konieczno-
ści implementacji dodatkowego kodu w innych
warstwach aplikacji. Uruchamiane są w momencie
zajścia określonego zdarzenia, a takim zdarzeniem
może być: wprowadzanie, usuwanie, modyfikacja
danych. Ich zadaniem jest kontrola poprawności
wprowadzanych lub przetwarzanych danych do
postaci akceptowalnej przez użytkownika. [7]
Wyzwalacze posiadają jednak także wady, do
których należy potencjalny spadek wydajności prze-
twarzania bazy przy częstych operacjach dodawa-
nia, edytowania lub usuwania danych. Jeśli zmniej-
szenie efektywności jest znaczące, należy rozważyć
alternatywne metody zapewniania spójności da-
nych, jak na przykład przeniesienie odpowiedniej
logiki do procedur przechowywanych (ang. stored
procedures). [7]
Większość obecnych baz danych to systemy
wielodostępowe, w których użytkownicy mogą
wspólnie korzystać z danych w bazie. Każdy z nich
może operować na tych samych danych w tym sa-
mym czasie. Aby nie doszło do kolizji podczas mo-
dyfikacji tych samych danych, system zarządzania
bazą danych musi zapewniać, że w wypadku, gdy
dwie transakcje mają dostęp do tych samych da-
nych, baza danych nie znajdzie się w stanie niespój-
nym. Współbieżność transakcji sprowadza się, więc
do wykonania przeplotu operacji z różnych trans-
akcji z uwzględnieniem więzów integralności.
Transakcja jest poprawna, jeśli wykonywana w izo-
lacji od innych transakcji, przekształca spójny stan
bazy danych w spójny stan bazy danych, czyli gdy są
spełnione wszystkie więzy spójności. [6]
Internet, jako najpopularniejsze medium, po-
zwalające na łatwą i szybką wymianę informacji jest
narażony na wiele form nieuczciwości i naruszenia
bezpieczeństwa danych. Zagrożenia w Internecie
można podzielić na trzy główne kategorie:
- zagrożenia dla systemów i aplikacji webowych,
- zagrożenia dla prywatności,
- zagrożenia dla osób.
Zagrożenia dla systemów i aplikacji webo-
wych to zagrożenia wynikające z celowego działania
nieuprawnionych użytkowników lub te, które nie są
skutkiem celowego działania. Celowe działania osób
nieuprawnionych mogą obejmować kradzieże in-
formacji, ataki czy akty sabotażu. Do drugiej grupy
można zaliczyć: awarie sprzętu, błędy i niedopa-
trzenia użytkowników, różne zdarzenia losowe. [8]
Najpopularniejszym sposobem uwierzytel-
niania użytkowników są obecnie hasła. Niestety
ciągle obserwowany jest wzrost efektywności roz-
maitych programów do łamania szyfrowanych ha-
seł. Systemy uwierzytelniające borykają się z pro-
blemem ataków siłowych, dlatego opracowano me-
tody ochrony przed nimi. Wprowadzono sztuczne
przerwy między momentem wprowadzenia loginu
i hasła a wyświetleniem komunikatu o powodzeniu
lub niepowodzeniu uwierzytelniania. Blokuje się
konta po osiągnięciu pewnej określonej liczby prób
logowania zakończonych niepowodzeniem. Jednak
te metody nie sprawdzają się zwłaszcza w syste-
mach internetowych, dlatego często stosuje się sil-
niejsze algorytmy do zwiększenia stopnia skompli-
kowania haseł przechowywanych w systemie. Jed-
nym ze sposób ochrony jest wymuszanie na użyt-
kownikach wybierania haseł trudnych do odgadnię-
cia. [9]
Wiele systemów realizuje kontrolę dostępu
na kilku etapach: logowania do serwera, na pozio-
mie baz danych oraz na poziomie obiektów w bazie
danych (np. tabel). W każdym przypadku precyzja
kontroli dostępu do informacji jest ograniczona do
pewnego poziomu. Kontrolując dostęp do tabel nie
zapewnia się jednak zabezpieczenia poszczególnych
wierszy czy komórek w tabelach. Konieczność za-
chowania poufności niektórych danych wymogła
precyzyjniejszą kontrolę dostępu do informacji
w postaci praw dostępu na poziomie pojedynczego
wiersza wybranej tabeli określonego użytkownika.
Rozwiązania Multi-Level Security (MLS) to zestaw
procedur i powiązań wbudowanych w motor bazy
danych. Jest to powszechnie stosowany paradygmat
definiowania precyzyjnej kontroli dostępu do da-
nych. Aby uruchomić zabezpieczenie, niezbędne jest
zdefiniowanie tak zwanych polityk bezpieczeństwa
(ang. security policies). Każda z polityk to zestaw
etykiet. Każda z etykiet definiuje, który użytkownik
bazy ma dostęp, do jakiego podzbioru danych. Każ-
de wykonywane zapytanie będzie sprawdzane, czy
Bezpieczeństwo
danych
udostępnianych
w Internecie
Wielopoziomowe systemy zabezpieczenia baz
danych
Logistyka 6/2013
70
Logistyka - nauka
występujące w nim tabele nie są chronione reguła-
mi polityk bezpieczeństwa. W zależności od przy-
znanych użytkownikowi etykiet, do klauzuli WHE-
RE dopisywane są w takim przypadku dodatkowe
warunki. Ponieważ operacje te wykonywane są
wewnątrz motoru bazy danych, są one praktycznie
niemożliwe do obejścia. [10]
Ostatnią linią obrony w bazach danych jest
zastosowanie mechanizmów kryptograficznych.
Mechanizmy te zapewniają poufność, integralność
oraz bezpieczne uwierzytelnienie użytkowników
łączących się z bazą. Zastosowane mechanizmy
kryptograficzne zależą od typu danych, które chro-
nimy, a także specyfiki systemu IT, w którym dane
te są przetwarzane. Konieczność szyfrowania da-
nych wynika często z przepisów prawa (ochrona
danych osobowych) lub wymagań branżowych
(PCI-DSS). Może ono dotyczyć szyfrowania zawar-
tości plików, jako całości, bądź też poszczególnych
rekordów lub kolumn. Przy szyfrowaniu wybranych
kolumn dane są kodowane przed zapisaniem ich na
nośnik danych. Jest to szyfrowanie transparentne
(ang. Transparent Data Encryption). TDE zapewnia
ochronę przed odczytaniem danych przy nieupraw-
nionym dostępie fizycznym, np. po utracie kontroli
nad dużymi zbiorami danych (kradzieży serwera,
dysków lub kopii zapasowych). W Microsoft SQL
Server szyfrowanie TDE jest dostępne od wersji
2008. Dane są szyfrowane kluczem symetrycznym,
który jest przechowywany w zaszyfrowanej bazie,
ale również w postaci zaszyfrowanej. Oracle wpro-
wadził TDE w wersji, 10g R2, a klucze kryptogra-
ficzne są przechowywane w „portfelu”, który tworzy
się określając jego lokalizację. Dostęp do „portfela”
jest również chroniony za pomocą hasła.
Szyfrowanie w Microsoft SQL Server udo-
stępnia nowoczesne algorytmy kryptograficzne AES
do 256 bitów i 3DES. W Oracle jest realizowane
algorytmem DES z kluczem o długości 56 znaków,
3DES z kluczem o długości 168 znaków i z kluczem
o długości 112 znaków, AES z kluczem o długości
128, 192 i 256 znaków. W Oracle 11g dodano nową
metodę szyfrowania danych (ang. Transparent Ta-
blespace Encryption, TTE), będąca rozszerzeniem
TDE. Technologia TTE jest bardziej wydajną metodą
szyfrowania danych na poziomie całych przestrzeni
tabel. Również i w tym wypadku są stosowane klu-
cze szyfrujące. [4]
Niezależnie od stosowanego mechanizmu szy-
frowania niezwykle istotne jest stworzenie
i przechowywanie w bezpiecznym miejscu kluczy
pozwalających na odtworzenie zaszyfrowanej bazy.
Dobrym rozwiązaniem jest przechowywanie stoso-
wanych kluczy kryptograficznych w zewnętrznym
module kryptograficznym.
Obecnie trudno sobie wyobrazić firmy logi-
styczne bez wspomagania ze strony systemu infor-
matycznego z platformą bazodanową. Zabezpiecze-
nie bazy danych staje się coraz istotniejsze ze
względu na przechowywane dane, nie tylko klu-
czowe z punktu widzenia organizacji, ale także
chronione prawem. Zabezpieczenie baz danych
można rozpatrywać na wielu płaszczyznach. Pierw-
szym etapem jest zaplanowanie oraz właściwe za-
projektowanie bezpiecznego systemu bazodanowe-
go. Planowanie struktury bazy powinno uwzględ-
niać warunki, które muszą być spełnione poprzez
pewien podzbiór danych w bazie. Definiując użyt-
kowników końcowych należy określić zestaw
uprawnień jak i danych, z których będą mogli ko-
rzystać. Do rozważenia są również mechanizmy
kryptograficzne i polityki bezpieczeństwa zapew-
niające bezpieczeństwo na najwyższym poziomie.
Artykuł prezentuje mechanizmy zabezpieczeń
logistycznych baz danych. Ochrona informacji
w tego typu bazach powinna być realizowana z wy-
korzystaniem zaawansowanych technicznie mecha-
nizmów bezpieczeństwa, których rolą jest udostęp-
nienie informacji tylko użytkownikom uprawnio-
nym do ich korzystania.
This paper presents security mechanisms of
logistics databases. The protection of information in
such databases should be implemented using high-
tech security mechanism, which should provide
access to information only to authorized users.
Zastosowanie metod kryptograficznych
Podsumowanie
Streszczenie
Abstract
Logistyka - nauka
Logistyka 6/2013
71
[1]
http://www.computerworld.pl/artykuly/298702/I
nfrastruktura.dla.logistyki.html
(dostęp: 19.10.2013).
[2] Stokłosa J., Bilski T., Pankowski T., Bezpieczeń-
stwo danych w systemach informatycznych, PWN,
Warszawa 2001.
[3] Ross A., Inżynieria zabezpieczeń, WNT, Warsza-
wa 2005.
[4] Busłowska E., Trębicka A., Kotowski R., Zagroże-
nia pochodzące z Internetu i metody ochrony przed
nimi, Logistyka nr 6/2011 (dział Nauka), s. 393-400.
[5] Kukuczka J., Relacyjne bazy danych. Wyd. Pra-
cowni Komputerowej Jacka Skalmierskiego, Gliwice
2000.
[6] Chałon M., Ochrona i bezpieczeństwo danych oraz
tendencje rozwojowe baz danych, Oficyna Wydawni-
cza Politechniki Wrocławskiej, Wrocław 2007.
[7] Dudek D., Integralność danych, wyzwalacze
i wydajność, Software Developer’s Journal 11/2005
(131) Bazy danych.
[8] Kasprowski P., Kozielski S., Kuźniacki P., Pietra-
szek T., Zagrożenia aplikacji internetowych udostęp-
niających bazy danych, STUDIA INFORMATICA, Vo-
lume 24, Number 2B (54), Politechnika Śląska, In-
stytut Informatyki, 2003.
[9] Johnston P., Authentication and Session Man-
agement on the Web, GSEC 2004.
[10] Gnybek J.,
http://www.ploug.org.pl/plougtki.php?action=read
&p=32&a=7 (dostęp: 20.10.2013).
Literatura