-
Path: news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
From: Zbigniew Malec <a...@i...invalid>
Newsgroups: pl.comp.programming
Subject: Re: Aplikacje bazodanowe - bezpieczeństwo
Date: Tue, 28 Jun 2011 22:25:10 +0200
Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
Lines: 76
Message-ID: <qtrn2yav8xs.1n3xvs8cc6ljm$.dlg@40tude.net>
References: <4e09cf5c$0$2438$65785112@news.neostrada.pl> <iuck48$ijr$1@news.onet.pl>
<iucmsh$ue8$4@solani.org> <iucnvv$1hp$1@news.onet.pl>
<iucp8s$83e$1@solani.org> <iucq9m$ake$1@news.onet.pl>
NNTP-Posting-Host: 89-76-122-84.dynamic.chello.pl
Mime-Version: 1.0
Content-Type: text/plain; charset="iso-8859-2"
Content-Transfer-Encoding: 8bit
X-Trace: inews.gazeta.pl 1309292710 21042 89.76.122.84 (28 Jun 2011 20:25:10 GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Tue, 28 Jun 2011 20:25:10 +0000 (UTC)
X-User: zbyszanna
User-Agent: 40tude_Dialog/2.0.15.1
Xref: news-archive.icm.edu.pl pl.comp.programming:191216
[ ukryj nagłówki ]On Tue, 28 Jun 2011 17:00:07 +0200, Michal Kleczek wrote:
>> Bo granulacja kontroli dostępu w DBMS często nie przystaje do granulacji
>> potrzebnej do implementacji kontroli dostępu.
>
> I to jest czesto dobry argument.
> Z drugiej strony mozna sie zastanawiac, czy moze inny (oferujacy odpowiednie
> narzedzia/granulacje) DBMS jest lepszym rozwiazaniem?
> Oraz czy przypadkiem _rzeczywiscie_ nie przystaje.
Nie ma co tego na DBMSa zwalać, bo zwyczajnie nie jesteś w stanie osiągnąć
wystarczającej elastyczności. Moduł zarządzania użytkownikami DBMS jest
projektowany pod zupełnie inne zastosowania i jako taki nie nadaje się do
wykorzystania w aplikacji. Użytkownicy aplikacji to są "dane", a nie
element funkcjonalny bazy. Podstawowym kryterium wyboru DBMS na pewno nie
jest to, czy można użyć jego modułu zarządzania użytkownikami w swojej
aplikacji.
>> Jak chcesz zorganizować
>> prawo do odczytu danych (np. faktur czy zamówień) związanych z jednym
>> tylko klientem dla opiekuna tego klienta?
>>
>
> Chocby widoki?
Można, ale po co? Żeby osiągnąć odpowiednią elastyczność i tak będziesz
musiał dobudować tyle infrastruktury, że dodatkowa tabelka z użytkownikami
nie robi żadnej różnicy.
>>> Wielokrotnie uzywalem narzedzi w rodzaju np. SQL Navigator lub Crystal
>>> Reports do dostepu do danych w srodowiskach gdzie nie do wszystkich
>>> danych w bazie danych moglem miec dostep. Mialem swoje konto w DBMS z
>>> przypisanymi uprawnieniami i tyle.
>>
>> Nie rozumiem. Miałeś nie mieć dostępu w aplikacji FooBarBaz do pewnych
>> danych, ale uzyskiwałeś go bo łączyłeś się z bazą ręcznie zamiast używać
>> FooBarBaz?
>>
>
> Mialem nie miec dostepu do pewnych danych _niezaleznie_ od tego jakiej
> aplikacji uzywam do dostepu.
> Podobnie jak mam nie miec dostepu do danych w katalogu /home/iksinski
> niezaleznie od aplikacji jakiej uzywam.
W przypadku osób generujących raporty z bazy, albo w inny sposób
korzystających bezpośrednio z danych zawartych w bazie danych naturalne
jest korzystanie z użytkowników bazodanowych. W przypadku aplikacji
korzystającej z tych danych za pośrednictwem serwera aplikacji (albo
grubego klienta) już takie naturalne to nie jest, bo użytkownik jest od tej
bazy odseparowany i jego tożsamość, to jest tylko kojelny parametr w
wykonywanych zapytaniach, a nie element funkcjonalny aplikacji.
> W wiekszosci zastosowan komputerow przedmiotem ochrony sa _dane_ (pomijam
> przypadki, gdzie chroni sie dostep np. do zewnetrznych urzadzen).
> Z punktu widzenia bezpieczenstwa danych zezwolenie na to, zeby kazda
> aplikacja definiowala _swoj wlasny_ model ochrony danych jest ryzykowny.
Rezygnację całkowitą z uprawnień nadawanych przez DB można uznać za
nierozsądną, ale nie można też popadać w przesadę. Typowy wzorzec ich
wykorzystania to tworzenie użytkowników pod dane aplikacje i udostępnianie
tym użytkownikom pewnego podzbioru obiektów w bazie. Pozdbiór ten w
założeniach ma tworzyć spójne API dostępu do danych z punktu widzenia danej
aplikacji.
Ja bym wręcz zaryzykował twierdzenie, że utożsamianie użytkowników
aplikacji z użytkownikami DB zmniejsza bezpieczeństwo, bo zamiast mieć
jednego dobrze opisanego użytkownika na poziomie bazy danych (a więc w
warstwie dostępu do danych), trzeba dbać o poprawne opisanie wszystkich jej
(aplikacji) użytkowników. W opisanym przeze mnie typowym przypadku
uprawnienia użytkowników aplikacji są odseparowane od uprawnień samej
aplikacji a co za tym idzie łatwiej jest postawić wyraźną granicę, co
aplikacji wolno a czego jej nie wolno.
--
Pozdrawiam
Zbyszek Malec
Następne wpisy z tego wątku
- 28.06.11 20:55 Andrzej Jarzabek
- 28.06.11 21:16 Marek Borowski
- 28.06.11 21:17 Lukasz
- 28.06.11 22:10 Przemek O.
- 28.06.11 23:11 Lukasz
- 29.06.11 06:09 Mariusz Kruk
- 29.06.11 06:19 Jacek
- 29.06.11 06:35 Mariusz Kruk
- 29.06.11 07:11 Andrzej Jarzabek
- 29.06.11 07:48 Przemek O.
- 29.06.11 07:49 Michal Kleczek
- 29.06.11 08:01 Stachu 'Dozzie' K.
- 29.06.11 08:40 Mariusz Kruk
- 29.06.11 08:24 Michal Kleczek
- 29.06.11 08:37 Mariusz Kruk
Najnowsze wątki z tej grupy
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
Najnowsze wątki
- 2024-12-16 W telefonie brak szufladki na drugą kartę SIM
- 2024-12-16 Szukam monitora HDMI ok. 4"
- 2024-12-16 Poznań => Key Account Manager <=
- 2024-12-16 Akwarium w aucie
- 2024-12-16 Warszawa => Account Manager - Usługi rekrutacyjne <=
- 2024-12-16 Warszawa => Expert Recruiter 360 <=
- 2024-12-16 Gdańsk => System Architect (background deweloperski w Java) <=
- 2024-12-16 Warszawa => Key Account Manager <=
- 2024-12-16 Warszawa => Spedytor Międzynarodowy <=
- 2024-12-16 Białystok => Analityk w dziale Trade Development (doświadczenie z Po
- 2024-12-16 Warszawa => Programista Microsoft Dynamics 365 Business Central <=
- 2024-12-16 Wrocław => Konsultant wdrożeniowy Comarch XL/Optima (Księgowość i
- 2024-12-16 Szczecin => Key Account Manager (ERP) <=
- 2024-12-16 Lublin => Inżynier Serwisu Sprzętu Medycznego <=
- 2024-12-16 Gdańsk => Specjalista ds. Sprzedaży <=