Kamzik-II wrote:

Prava jsou prirazena kodu.

Tomu mam rozumet jakoze pokud bych mel v aplikace trusted knihovnu, tak bych pres ni
mohl delat "bordel" i kdyz muj kod neni trusted?

S tim se samozrejme pocita (koneckoncu, standardni knihovna je zcela trusted). Efektivni prava v koamziku kontroly jsou prunikem prav vseho kodu na zasobniku. Takze to pak vypada zasobnik napriklad takto:

 UntrustableApp.main()        :  omezena prava, nema pravo BordelPermission
 TrustableLibrary.doBordel() : plna prava, tedy vcerne BordelPermission
AccessController.checkPermission(new BordelPermission()) : zjisti prunik, pravo nema, vyjimka

Pokud trusted kod potrebuje provest neco na co volajici nemusi mit prava a je si jisty ze je to OK (napriklad precist konfigurak, ktery je jinak duverny a apletum skryty), muze pouzit AccessController.doPrivileged() metody.


--
Kamil Podlesak <[EMAIL PROTECTED]>

Odpovedet emailem