PRG: bezpecnost v CORBA


To ucto-dev-l@pinknet.cz
From Petr Ferschmann <petr@ferschmann.cz>
Date Sun, 24 Mar 2002 11:45:40 +0100
Organization Petr Ferschmann


Jak na bezpecnost v CORBA
=========================

Zakladnim kamenem ucetnictvi bude bezpecnost. Vysledkem projektu ucetnictvi
by mel byt system schopny bezet volne na internetu a byt neproniknutelny.
To je samozrejme hudba budoucnosti.

Pro zajisteni teto bezpecnosti se v CORBA pouziva tzv. SecurityService.
Ten v kombinaci s SSLIIOP by nam tuto bezpecnost mel zajistit.

SSLIIOP je vlastne sifrovany prenos dat. Pouziva SSL (stejne jako HTTPS).
Umoznuje overeni dle RSA klicu:
  to nam zajisti, ze kdyz se k Vam pripojuje Vase ucetni tak si je 100% jista
  ze mluvi s Vasim systemem (a ne nekym jinym - tj. utocnikem).

SSLIIOP je take nutna pro SecurityService.

SecurityService zajistuje overeni uzivatele (jsem Franta Vonasek) a omezeni
prav.

Urcujeme nekolik urovni.

Level 0 - autorizujeme uzivatele pro system.
Level 1 - autorizujeme uzivatele a umoznime mu spoustet jen takove metody
          na ktere ma pravo. Az do teto urovne o tomto nemusi aplikace vedet
          nic.
Level 2 - autorizace, omezeni a navic muze aplikace zjistit jake ma pravo a
          podle toho se zachovat.

Prava se priduleji do tzv. domen. Kazdy uzivatel je clenem nejake domeny
(ci vice).


ORBit a MICO pouzivaji zjednodusenou autorizaci pomoci tzv. cookie - nahodne
vygenerovany text, ktery posila a tim se overi, ze ma moznost pristupu do
systemu. Myslim, ze toto bude zatim stacit nez vznikne SecurityServices pro
ORBit nebo pro MICO.


Jak to psat v ucto?
===================

V podstate je zabezpecno az do Level 1 (vcetne) transparentni a system se o to
nemusi starat. V tomto trendu bych pokracoval. Zatim bych bezpecnost vyresil
tak, ze se pripojim k nejakemu objektu a predam mu jmeno a heslo, on jej
zkontroluje a pak vrati odkaz na ModuleManager, ktery umozni pristup ke
vsem castem systemu.

Zjisteni v ktere je uzivatel domene bych zatim nahradil makrem
(napr. DOMAIN_IS_MEMBER( "nazev domeny" ) - vraci true/false
resp DOMAIN_CHECK( "nazev domeny" ) - vraci exception).


-- 

                                  Petr "Fers" Ferschmann

 -=[  petr@ferschmann.cz  ]==[ http://petr.ferschmann.cz/ ]=-
-=[ Koukni na http://www.postcard.cz/ ]==[ +420 604/781 009 ]=-

GPG Fingerprint:
[83B0 6378 7A9D D993 035E  60BD FEEC F665 D2C8 1B9A]

-------------------------- ucto-dev-l@pinknet.cz ------------------------
Konference o vyvoji ucetnictvi                       http://ucto.linux.cz/


Partial thread listing: