
Owen Little
0
3327
880
Jednoho dne jsem si v prohlížeči Firefox prohlížel docela dobře navrženou hru založenou na Java. Poté jsem nemohl pomoci, ale přemýšlet o užitečnosti a síle Java - konkrétně o tom, jak fungují Java applety na webu. V podnikovém prostředí, ve kterém pracuji, je Java považována za nástroj webové aplikace pro vývoj aplikací založených na prohlížeči. Ve výchozím nastavení jsou aplikace ActiveX ve všech prohlížečích deaktivovány.
Sun Microsystems vyvinul v roce 1995 programovací jazyk a architekturu Java. Od té doby se stal cennou a nedílnou součástí vývoje internetu. Paul poskytl skvělý seznam příkladů aplikací Java 5 nejlepších webů pro Java aplikace Příklady 5 nejlepších webů pro Java aplikace Příklady, které by se měly vývojářům ukázat jako velmi užitečné, a Karl poskytl užitečného průvodce, jak odstranit starší verze JRE Jak odstranit staré Verze Java Runtime z počítače Jak odebrat staré verze Java Runtime z počítače z vašeho systému.
V tomto článku bych se chtěl chvilku zamyslet nad důvody, proč je Java považována za jednu z nejdůvěryhodnějších architektur pro vývoj a provoz aplikací přes internet a trochu se věnuji tomu, jak Java applety fungují. Jak většina čtenářů může vědět, krása Java spočívá v tom, že architektura Java Virtual Machine umožňuje spuštění Java na více platformách - včetně Windows, Solaris, Linux a Apple. Schopnost psát běžné aplikace, které mohou běžet na více architekturách, činí z Java jednu z těch webových programovacích modelů, které přežily a vzkvétaly více než deset let.
Proč můžete nainstalovat a spustit software Java kdekoli
Důvod, proč Sunův model fungoval tak dobře, je částečně kvůli skutečnosti, že byl vytvořen k překonání jedné z mnoha nevýhod raného internetu. Jen velmi málo “užitečný” aplikace by se mohly spouštět přes internet kvůli všem bezpečnostním problémům, které umožňují internetové aplikaci s přístupem k nastavení a informacím prohlížečů - nebo ještě horšímu, souborovému systému a operačnímu systému počítače. Brzy vývojáři architektů si uvědomili, že pro přežití jakéhokoli prostředí webového softwaru je nutné brát tyto bezpečnostní aspekty velmi vážně.
Než se dostaneme k zabezpečení, rád bych stručně popsal samotnou architekturu a to, co učinilo systém tak efektivním a výkonným pro vývojáře softwaru i pro uživatele internetu, kteří chtěli užitečnější a funkčnější webové aplikace..
Pokud se podíváte na můj špatný pokus o kreslení výše, uvidíte hrubou reprezentaci průběhu programu Java. V podstatě vývojáři Java psají aplikaci. Zaměřuji se na Java applety, protože se jedná o internetové aplikace - místní Java aplikace jsou úplně jiné zvíře s vlastními jedinečnými úvahami.
Vývojáři vytvářejí kód Java Applet, který se může začlenit do jakékoli webové stránky. Ať už používáte Ubuntu, Mac nebo Windows, když spustíte applet s konkrétní verzí prohlížeče, Applet se pokusí spustit v rámci “pískoviště” známé jako Java Runtime Environment nebo Java Machine. Našel jsem několik skvělých, jednoduchých příkladů toho, jak Java applety fungují, vytvořil Joseph Bergin z Pace University v roce 1996.
Jak vidíte, tato jednoduchá aplikace přijímá vstup uživatele a reaguje na tento vstup tříděním náhodných bodů zvoleným způsobem. Tato aplikace přijímá kód Java a převádí jej na strojově čitelný kód, který je vhodný pro konkrétní operační systém, takže myš, displej a další systémové funkce pracují s touto aplikací správně.
Jak můžete vidět z jeho kódu na pozadí, Java je objektově orientovaný jazyk s třídami a objekty, které jsou společné pro všechny vývojáře Java. To je krása vývoje Java - na platformě, pro kterou píšete, nezáleží, protože všichni mluví stejným jazykem.
Java je nyní aplikační runtime platformou, která je stále více přijímána a “Standard” po celém světě a je to jeden z nejpopulárnějších programovacích jazyků vybraných pro vývoj online aplikací. Můžete nainstalovat nejnovější JRE pro svůj operační systém kdykoli.
Bezpečnostní obavy a proč byste se měli cítit v bezpečí
Celé rozvržení Java bylo vyvinuto s ohledem na bezpečnost uživatelů. Vývojáři Sunu chtěli strukturovat JRE a jazyk takovým způsobem, který, i když není nemožné hacknout, by byl mnohem obtížnější. V posledních letech jsme všichni slyšeli některé noční účty virů ActiveX a podobně, ale Java zůstává pro většinu firem a podnikových prostředí na vrcholu seznamu jako jedna z nejbezpečnějších metod pro spouštění webových aplikací v prohlížeči. Většina společností ponechává Java ve svých prohlížečích povolenou a většina klientských počítačů je nainstalována s nejnovější JRE.
Při spuštění apletu Java nebo při instalaci JRE si všimnete ikony Java na hlavním panelu. Když to uvidíte, víte, že máte nainstalovanou Javu. Chcete-li zkontrolovat verzi, klepněte pravým tlačítkem myši, otevřete Ovládací panely a vyberte “O… ”
Toto běhové prostředí nebo “pískoviště” chrání váš počítač před škodlivým kódem jednoduše způsobem, jakým byla funkce vyvinuta a jazyk byl strukturován. Některé z bezpečnostních hledisek, na které se můžete spolehnout, když v prohlížeči povolíte Javu a instalace JRE do vašeho systému, jsou následující.
- Java má veřejné metody, které mohou vývojáři využít, ale tyto běžné metody mají bezpečnostní kontroly, které zajistí, že nebudou aplikací nesprávně používány. To znamená, že přístup k mnoha objektům (například k objektu File) má určitý “bezpečnostní kontrola” proces před přístupem kterékoli aplikace k této veřejné metodě v knihovně Java.
- Java je zvažována “typ bezpečný,” což znamená, že typy kompilátorů a runtime jsou kompatibilní - ověřeny při kompilaci nebo běhu. Blokuje škodlivý kód, který se pokouší obejít bezpečnostní kontroly přístupu “casting” objekty. To vše znamená, že Java odstranila schopnost další celé třídy softwaru Malware a Virus způsobovat problémy.
- Vývojáři deklarují metody jako “finále,” což znamená, že externí aplikace (jako je škodlivá softwarová aplikace) nemohou přepsat metody - pro objekt je vyvolána pouze skutečně deklarovaná metoda. Další bezpečnostní crack zapečetil Java.
- A konečně, i když je trnem na straně mnoha vývojářů, Java nepovoluje ukazatele jako datový typ. I když to znamená, že vývojáři potřebují vyvinout jiné způsoby, jak plnit úkoly, kde by používali ukazatele, také to znamená, že s ukazateli pole nelze manipulovat - ani programátoři nemohou náhodně překročit délku pole chybným kódem. Škodlivé aplikace nemohou využít aritmetiku ukazatele k získání přístupu k ukazatelům systémových objektů, protože neexistuje žádný ukazatel, který by mohl manipulovat.
- Java má své vlastní “sběr odpadků” obnovit paměť, a tím blokovat schopnost škodlivého kódu přidělit paměť pro jeden účel, zrušit alokaci a poté ji použít (s novým ukazatelem) pro škodlivé účely. Z tohoto důvodu je opět blokována celá třída škodlivého kódu.
Pokud nejste programátorem, všechny výše uvedené informace by vás měly jednoduše ujistit, že přístup Java k provozování webových aplikací je jednou z nejbezpečnějších dostupných. Můžete si být jisti, že ve svém systému spustíte JRE a spouštíte applety Java.
Další věcí, které je třeba pochopit při spuštění Java appletů, je, když se vás zeptá, zda chcete poskytnout “důvěryhodný certifikát.” Tyto žádosti přijímejte opatrně, protože jakmile to uděláte, může se Java Code spouštět mimo normální Applet “pískoviště.” K certifikátům, kterým jste věřili, můžete přistupovat v Ovládacích panelech Java a kliknutím na kartu zabezpečení a poté na “Certifikáty… ”
Nepřihlášené aplety mohou pouze navazovat síťová připojení k hostiteli, zobrazovat webové dokumenty, vyvolávat pouze veřejné metody (viz výše uvedená výhoda zabezpečení) a mohou číst vlastnosti systému. Podepsaný Na druhou stranu applety mohou přistupovat k lokálnímu souborovému systému, souborům, schránkám a tiskárnám a mají přístup k dalším vzdáleným serverům a mnohem více. Skutečnost, že uživatel (vy) musí takové povolení výslovně udělit, je přesto příjemnou zárukou. Rozpoznal jsem každou aplikaci v mém seznamu - nic se nepřidává automaticky.
Jste vývojář Java? Jaký je váš názor na funkčnost a zabezpečení appletů Java? Pokud jste jen běžný uživatel internetu a nejste vývojář, považujete proces spuštění Java appletů za dostatečně srozumitelný? Sdílejte své myšlenky v sekci komentářů níže.