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]>