..


Sponzorované odkazy

Bezpečnosť v Java pieskovisku modelu

Článok napísaný Markom Frisoni
Strana 1 z 3

Od jeho úvodu, Java má vyhradené dôležitú úlohu v bezpečnostných otázkach. Aj keď so zmiešanými výsledkami, dizajnéri sa snaží poskytnúť platformu bezpečnostných systémov, realizované priamo v oblasti jazyka, vývojárom k dispozícii.

V nepretržitom procese vývoja a zdokonaľovania JVM sa stala jedným z najdôležitejších infraštruktúry pre samostatné, internet, mobil a ďalšie, v tomto článku sa zameriame na vývoj bezpečnostného modelu, obyčajne nazvaný pieskovisku, komentovať konštrukčných chýb a súčasný stav.

Predpoklady

Tento článok je určený pre všetkých, či už sú skúsení vývojári v Jave, kto sa postí úplne čitateľmi témy. Niektoré úvahy bude zrozumiteľnejšie pre tých, ktorí už majú nejaké skúsenosti s týmto jazykom, ale čítanie tohto článku, je vhodný pre všetkých čitateľov.

Na pieskovisku

Pôvodného modelu

Pôvodný model, známy ako sandbox bola navrhnutá tak, aby neobmedzovali potenciálne nebezpečný kód v izolovanom prostredí, a veľmi obmedzujúce. Java od jeho narodenia, bol silne orientovaný na sieti a táto úvaha viedla k navrhnutie prevedenie modelu, v ktorom bol kód stiahnuť priamo z diaľkového ovládania, vystavuje klientovi značné problémy so zabezpečením.

Vo svojom prvom prevedení, schematicky znázornené na obrázku, na pieskovisku len zhruba rozlišovať medzi lokálnym a vzdialeným kód kód: prvý bol teší plný prístup ku všetkým zdrojom "kritický" systém, ako napríklad súborové systémy a rôznymi zariadeniami, vzdialené spustenie kódu Naopak, mali obmedzený prístup k zdrojom, sprostredkované rovnaké karanténe: applety, dnes do značnej miery zmizli z webu, bol som najlepší známy príklad.

Tento model v oblasti zabezpečenia JDK 1.0

Tento model obsahuje sadu bezpečnostných mechanizmov na rôznych úrovniach. Po prvé, Java je typovo bezpečný, tj existuje explicitný vzťah medzi premennou a ovládať, a jeho typ (integer, s plávajúcou desatinnou čiarkou, string, atď ..).
Tí, ktorí majú naprogramovaný v jazykoch s nízkou / strednej úrovni, ako je C a C + + vedieť, koľko problémov je možné sa vyhnúť tejto kontroly: súbor implicitné konverzie medzi typmi, ako je číslo, alebo boolean neplatné odkazy na ďalšie ukazovatele, ktoré sú charakteristické tieto jazyky v rovnakej dobe sa stal hlavným zdrojom programové chyby, rovnako oddaný začiatočníkov i expertov. Ak chcete minimalizovať možnosť, že vývoj sa hrubých chýb, konštruktéri spoločnosti Sun Microsystems predstavila niektoré aspekty doteraz nájsť iba v špecializovaných alebo jazykoch univerzitnej úrovni, ako je napr automatická správa pamäte (garbage collection) a ovládacie prvky za behu prístup k pamäti (ukazovatele, pole prvkov, atď ...).

Druhá úroveň ochrany je zaručená kompilátor a run-time, a virtuálny stroj. To zaisťuje, že bytecode, montér Java VM je vykonávané so správnym vykonať oprávnenia. Najmä dva kľúčové prvky, SecurityManager a ClassLoader, definovať miestny názov priestoru, aby sa zabránilo rušeniu medzi rôznymi inštanciami VM a riadenie kontroly prístupu k dôležitým zdrojom.

JDK 1.1 - kód podpísaný

Predkladaný model je veľmi flexibilný a na prvej aktualizácie JDK (verzia 1.1) bol predstavený koncept dôveryhodného kódu pre vzdialené aplikácie, v sprievode elektronického podpisu uznaný klientom, prístup k systémovým zdrojom. Riešenie je uvedené na nasledujúcom obrázku, je málo viac ako hack predchádzajúce architektúry, a preto vyžadujú kompletné prepísanie v budúcich vydaniach.

Tento model v oblasti zabezpečenia JDK 1.1

V rovnakej kategórii ...
E-Learning
CSS (kurz) CSS (kurz)
Web Design a prístupnosti podľa W3C CSS a XHTML. Od 29 €.
Flash MX a ActionScript (kurz) Flash MX a ActionScript (kurz)
Staňte sa autor webových stránok od 29 €.
Paint Shop Pro (prvé) Paint Shop Pro (prvé)
Webovej grafiky a úpravu fotografií s Corel PSP známe. Od 49 €.
Sponzorované odkazy