..


Gesponsorde links

Veiligheid in Java zandbak model

Artikel geschreven door Mark Frison
Pagina 1 van 3

Sinds de introductie heeft Java gereserveerd een belangrijke rol in de beveiliging. Zij het met gemengde resultaten, hebben ontwerpers gezocht naar platform beveiligingssystemen direct geïmplementeerd op het gebied van taal, beschikbaar voor ontwikkelaars te bieden.

In een continu proces van evolutie en verfijning van de JVM is uitgegroeid tot een van de belangrijkste infrastructuur voor stand-alone, web, mobiel en meer, in dit artikel zullen we ons richten op de ontwikkeling van de veiligheids-model, meestal een zandbak, commentaar op de ontwerpfouten en de huidige status.

Vereisten

Dit artikel is gericht tot iedereen, of ze zijn Java-programmeurs die vasten volledig lezers van het onderwerp ervaren. Enkele overwegingen zullen meer begrijpelijk zijn voor degenen die reeds over enige ervaring met deze taal, maar het lezen van dit artikel is geschikt voor elke lezer.

De zandbak

Het oorspronkelijke model

Het oorspronkelijke model, bekend als de zandbak werd ontworpen voor mogelijk schadelijke programmacode te beperken in een geïsoleerde omgeving, en zeer restrictief. Java sinds haar geboorte, was sterk gericht op het netwerk en deze overweging heeft geleid tot een executie model waarin de code direct werd gedownload van de afstandsbediening te bedenken, waardoor de klant een aanzienlijke veiligheidsproblemen.

In de eerste implementatie, schematisch weergegeven in de figuur, de zandbak slechts ongeveer onderscheid te maken tussen lokale en externe code code: de eerste was volledige toegang tot alle bronnen "kritische" systeem, zoals, bijvoorbeeld, file systemen en verschillende apparaten, de externe code Integendeel, had toegang tot hulpbronnen, bemiddeld door dezelfde sandbox beperkt: applets, nu grotendeels verdwenen van het web, heb ik het bekendste voorbeeld.

Deze sandbox security model in JDK 1.0

Dit model omvat een geheel van veiligheids-mechanismen op verschillende niveaus. In de eerste plaats, Java is type-safe, dwz er is een expliciete relatie tussen een variabele en gecontroleerd en het type (integer, floating point, string, etc. ..).
Degenen die geprogrammeerd in talen met een laag / mid-level zoals C en C + + weten hoe veel problemen kan deze controle worden vermeden: het geheel van impliciete omzettingen tussen de verschillende soorten, zoals integer of boolean leegte verwijzingen naar andere aanwijzingen, die karakteristiek zijn voor die talen op hetzelfde moment uitgegroeid tot de belangrijkste bron van programmeerfouten, even toegewijd aan zowel beginners als experts. Het minimaliseren van de kans dat de ontwikkelingen blunders gemaakt, de ontwerpers van zon introduceerde een aantal aspecten tot nu toe alleen te vinden in niche-of universitair niveau talen zoals, bijvoorbeeld, automatisch geheugenbeheer (het ophalen van vuilnis) en de controles aan de run-time Access Memory (pointers, array-elementen, enz. ...).

Het tweede niveau van bescherming wordt gegarandeerd door de compiler en de run-time, door de virtuele machine. Dit zorgt ervoor dat de bytecode, de assembler van de Java-VM is uitgevoerd met de juiste uitvoer rechten. Met name twee belangrijke componenten, de SecurityManager en classloader, definieert u een lokale naam ruimte om interferentie tussen de verschillende instanties van de VM vermijden en te beheren van de toegang regelt tot kritische hulpbronnen.

JDK 1.1 - code ondertekend

De gepresenteerde model is zeer flexibel en in de eerste update van de JDK (versie 1.1) is ingevoerd om het concept van de vertrouwde code om externe toepassingen, onder begeleiding van een elektronische handtekening erkend door de klant, toegang tot de systeembronnen. De oplossing, die in de volgende figuur, is weinig meer dan een hack van de vorige architectuur en vereisen daarom een ​​volledig herschreven in de volgende releases.

Deze sandbox security model in JDK 1.1

In dezelfde categorie ...
E-Learning
ASP Zero (Ebook) ASP Zero (Ebook)
Leren Microsoft ASP en VBScript vanaf nul. Op slechts 29 €.
ASP.NET (Cursus) ASP.NET (Cursus)
Volledige cursus voor het bouwen van webapplicaties van 49 €.
OpenOffice (Ebook) OpenOffice (Ebook)
De open-source software voor het beheer van het kantoor. Slechts 25 €.
Gesponsorde links