Hurtownie danych - bezpieczeństwo

Celem hurtowni danych jest zapewnienie użytkownikom łatwego dostępu do dużych ilości danych, a tym samym umożliwienie użytkownikom wydobycia informacji o firmie jako całości. Wiemy jednak, że mogą obowiązywać pewne ograniczenia bezpieczeństwa dotyczące danych, które mogą stanowić przeszkodę w dostępie do informacji. Jeśli analityk ma ograniczony widok danych, niemożliwe jest uchwycenie pełnego obrazu trendów w branży.

Dane od każdego analityka można podsumować i przekazać kierownictwu, gdzie można zagregować różne podsumowania. Ponieważ agregacje podsumowań nie mogą być takie same jak agregacje jako całość, można przeoczyć pewne trendy informacyjne w danych, chyba że ktoś analizuje dane jako całość.

Wymagania bezpieczeństwa

Dodanie funkcji bezpieczeństwa wpływa na wydajność hurtowni danych, dlatego ważne jest, aby jak najwcześniej określić wymagania dotyczące bezpieczeństwa. Trudno jest dodać funkcje bezpieczeństwa po uruchomieniu hurtowni danych.

Na etapie projektowania hurtowni danych należy mieć na uwadze, jakie źródła danych można dodać później i jaki będzie wpływ dodania tych źródeł danych. Na etapie projektowania powinniśmy rozważyć następujące możliwości.

  • Czy nowe źródła danych będą wymagały wprowadzenia nowych ograniczeń bezpieczeństwa i / lub audytów?

  • Czy dodali nowi użytkownicy, którzy mają ograniczony dostęp do danych, które są już ogólnie dostępne?

Taka sytuacja ma miejsce, gdy przyszli użytkownicy i źródła danych nie są dobrze znane. W takiej sytuacji musimy skorzystać z wiedzy biznesowej i celu hurtowni danych, aby poznać prawdopodobne wymagania.

Następujące czynności są objęte środkami bezpieczeństwa -

  • Dostęp użytkownika
  • Ładowanie danych
  • Przenoszenie danych
  • Generowanie zapytań

Dostęp użytkownika

Najpierw musimy sklasyfikować dane, a następnie sklasyfikować użytkowników na podstawie danych, do których mają dostęp. Innymi słowy, użytkownicy są klasyfikowani według danych, do których mają dostęp.

Data Classification

Do klasyfikacji danych można zastosować dwa podejścia:

  • Dane można klasyfikować zgodnie z ich wrażliwością. Dane wysoce wrażliwe są klasyfikowane jako wysoce ograniczone, a dane mniej wrażliwe jako mniej restrykcyjne.

  • Dane można również klasyfikować według funkcji stanowiska. To ograniczenie umożliwia tylko określonym użytkownikom przeglądanie określonych danych. Tutaj ograniczamy użytkowników do przeglądania tylko tej części danych, którymi są zainteresowani i za którą są odpowiedzialni.

W drugim podejściu jest kilka problemów. Aby to zrozumieć, posłużmy się przykładem. Załóżmy, że tworzysz hurtownię danych dla banku. Należy wziąć pod uwagę, że dane przechowywane w hurtowni danych to dane transakcji dla wszystkich rachunków. Pytanie brzmi, kto może zobaczyć dane transakcji. Rozwiązaniem jest klasyfikacja danych według funkcji.

User classification

Do klasyfikacji użytkowników można zastosować następujące podejścia:

  • Użytkownicy mogą być klasyfikowani zgodnie z hierarchią użytkowników w organizacji, tj. Użytkownicy mogą być klasyfikowani według działów, sekcji, grup itd.

  • Użytkownicy mogą również być klasyfikowani zgodnie z ich rolami, przy czym osoby są grupowane w działach na podstawie ich roli.

Classification on basis of Department

Spójrzmy na przykład hurtowni danych, w której użytkownicy pochodzą z działu sprzedaży i marketingu. Możemy mieć bezpieczeństwo z perspektywy firmy od góry do dołu, z dostępem skoncentrowanym na różnych działach. Ale mogą istnieć pewne ograniczenia dla użytkowników na różnych poziomach. Ta struktura jest pokazana na poniższym diagramie.

Ale jeśli każdy dział ma dostęp do różnych danych, powinniśmy oddzielnie zaprojektować dostęp bezpieczeństwa dla każdego działu. Można to osiągnąć dzięki działowym zbiorom danych. Ponieważ te zbiorniki danych są oddzielone od hurtowni danych, możemy wymusić oddzielne ograniczenia bezpieczeństwa w każdej zbiorczej bazie danych. To podejście przedstawiono na poniższym rysunku.

Classification Based on Role

Jeśli dane są ogólnie dostępne dla wszystkich działów, warto przestrzegać hierarchii dostępu do ról. Innymi słowy, jeśli dane są ogólnie dostępne dla wszystkich działów, zastosuj ograniczenia bezpieczeństwa zgodnie z rolą użytkownika. Hierarchię dostępu do ról przedstawiono na poniższym rysunku.

Wymagania dotyczące audytu

Audyt to podzbiór zabezpieczeń, kosztowna czynność. Inspekcja może spowodować duże obciążenie systemu. Aby zakończyć audyt na czas, potrzebujemy więcej sprzętu, dlatego zaleca się, aby wszędzie tam, gdzie jest to możliwe, audyt był wyłączony. Wymagania dotyczące audytu można podzielić na następujące kategorie:

  • Connections
  • Disconnections
  • Dostęp do danych
  • Zmiana danych

Note- Dla każdej z wyżej wymienionych kategorii konieczny jest audyt sukcesu, porażki lub obu. Z punktu widzenia bezpieczeństwa bardzo ważne są audyty błędów. Inspekcja niepowodzeń jest ważna, ponieważ może ujawnić nieautoryzowany lub oszukańczy dostęp.

Wymagania sieciowe

Bezpieczeństwo sieci jest równie ważne jak inne zabezpieczenia. Nie możemy zignorować wymagań dotyczących bezpieczeństwa sieci. Musimy wziąć pod uwagę następujące kwestie -

  • Czy konieczne jest szyfrowanie danych przed przeniesieniem ich do hurtowni danych?

  • Czy istnieją ograniczenia dotyczące tras sieciowych, które mogą obsługiwać dane?

Należy dokładnie rozważyć te ograniczenia. Oto punkty do zapamiętania -

  • Proces szyfrowania i deszyfrowania zwiększy narzuty. Wymagałoby to większej mocy obliczeniowej i czasu przetwarzania.

  • Koszt szyfrowania może być wysoki, jeśli system jest już załadowanym systemem, ponieważ za szyfrowanie odpowiada system źródłowy.

Przenoszenie danych

Podczas przenoszenia danych istnieją potencjalne konsekwencje dla bezpieczeństwa. Załóżmy, że musimy przesłać niektóre ograniczone dane jako płaski plik do załadowania. Gdy dane są ładowane do hurtowni danych, pojawiają się następujące pytania -

  • Gdzie jest przechowywany plik płaski?
  • Kto ma dostęp do tego miejsca na dysku?

Jeśli mówimy o tworzeniu kopii zapasowych tych płaskich plików, pojawiają się następujące pytania -

  • Czy tworzysz kopie zapasowe wersji zaszyfrowanych lub odszyfrowanych?
  • Czy te kopie zapasowe muszą być tworzone na specjalnych taśmach, które są przechowywane oddzielnie?
  • Kto ma dostęp do tych taśm?

Należy również wziąć pod uwagę inne formy przenoszenia danych, takie jak zestawy wyników zapytań. Pytania zadawane podczas tworzenia tymczasowej tabeli są następujące -

  • Gdzie ma się odbyć ten tymczasowy stół?
  • Jak sprawić, by taki stół był widoczny?

Powinniśmy unikać przypadkowego łamania ograniczeń bezpieczeństwa. Jeśli użytkownik mający dostęp do zastrzeżonych danych może generować dostępne tabele tymczasowe, dane mogą być widoczne dla nieautoryzowanych użytkowników. Możemy rozwiązać ten problem, tworząc oddzielny obszar tymczasowy dla użytkowników z dostępem do zastrzeżonych danych.

Dokumentacja

Wymagania dotyczące audytu i bezpieczeństwa muszą być odpowiednio udokumentowane. Będzie to traktowane jako część uzasadnienia. Ten dokument może zawierać wszystkie informacje zebrane z -

  • Klasyfikacja danych
  • Klasyfikacja użytkowników
  • Wymagania sieciowe
  • Wymogi dotyczące przenoszenia i przechowywania danych
  • Wszystkie czynności podlegające audytowi

Wpływ bezpieczeństwa na projekt

Bezpieczeństwo wpływa na kod aplikacji i skale czasowe tworzenia. Bezpieczeństwo wpływa na następujący obszar -

  • Rozwój aplikacji
  • Projekt bazy danych
  • Testing

Tworzenie aplikacji

Bezpieczeństwo wpływa na ogólny rozwój aplikacji, a także na projekt ważnych komponentów hurtowni danych, takich jak menedżer ładowania, menedżer magazynu i menedżer zapytań. Menedżer ładowania może wymagać sprawdzenia kodu w celu przefiltrowania rekordów i umieszczenia ich w różnych lokalizacjach. Aby ukryć niektóre dane, może być wymagane zastosowanie większej liczby reguł transformacji. Mogą również istnieć wymagania dotyczące dodatkowych metadanych do obsługi dodatkowych obiektów.

Aby utworzyć i utrzymać dodatkowe widoki, kierownik magazynu może wymagać dodatkowych kodów w celu wymuszenia bezpieczeństwa. Może zaistnieć potrzeba zakodowania dodatkowych testów w hurtowni danych, aby zapobiec oszukaniu go i przeniesieniu danych do lokalizacji, w której nie powinny być dostępne. Menedżer zapytań wymaga zmian, aby obsłużyć wszelkie ograniczenia dostępu. Menedżer zapytań musi być świadomy wszystkich dodatkowych widoków i agregacji.

Projekt bazy danych

Ma to również wpływ na układ bazy danych, ponieważ wdrażanie środków bezpieczeństwa powoduje wzrost liczby widoków i tabel. Dodanie zabezpieczeń zwiększa rozmiar bazy danych, a tym samym zwiększa złożoność projektowania bazy danych i zarządzania nią. Zwiększy również złożoność planu zarządzania i odzyskiwania kopii zapasowych.

Testowanie

Testowanie hurtowni danych to złożony i długotrwały proces. Dodanie zabezpieczeń do hurtowni danych wpływa również na złożoność czasu testowania. Wpływa na testowanie na dwa następujące sposoby -

  • Wydłuży to czas wymagany do integracji i testowania systemu.

  • Do przetestowania dodano dodatkową funkcjonalność, która zwiększy rozmiar zestawu testów.