ActiveX

ActiveX je softwarový rámec (framework) vyvinutý společností Microsoft v roce 1996. Nejedná se o programovací jazyk, ale o technologii, která umožňuje různým softwarovým aplikacím sdílet funkce a data. Využívá model COM (Component Object Model) a OLE (Object Linking and Embedding).

V kontextu webu umožňoval ActiveX spouštět plnohodnotné aplikace přímo v prohlížeči Internet Explorer, což ve své době přineslo možnosti, které tehdejší HTML a JavaScript nenabízely.

Jak ActiveX funguje

Základním prvkem jsou tzv. ActiveX Controls (ovládací prvky ActiveX). Jsou to v podstatě malé programy (komponenty), které si webový prohlížeč stáhne a spustí.

Opakovaná použitelnost: Jednou napsaný prvek (např. kalendář nebo přehrávač videa) mohl být vložen do webové stránky, tabulky v Excelu i aplikace ve Visual Basicu.

Binární kód: Na rozdíl od JavaScriptu, který je interpretován prohlížečem, je ActiveX kompilovaný binární kód. To znamená, že má přímý přístup k operačnímu systému Windows.

Klíčové rozdíly: ActiveX vs. Java Applets

V 90. letech byl ActiveX hlavním konkurentem technologie Java Applets.

Vlastnost	ActiveX	Java Applets
Platforma	Pouze Windows / Internet Explorer	Multiplatformní (Windows, Mac, Linux)
Výkon	Vysoký (přímý přístup k HW)	Střední (běží v izolovaném prostředí JVM)
Bezpečnost	Nízká (přístup k celému OS)	Vysoká (běží v tzv. Sandboxu)

Bezpečnostní rizika

Hlavní slabinou a důvodem zániku ActiveX byla jeho bezpečnostní filozofie.

Chybějící Sandbox

Zatímco moderní technologie (a tehdejší Java) běží v „pískovišti“ (sandboxu), který jim brání sahat na soubory v počítači, ActiveX prvek měl po spuštění stejná práva jako přihlášený uživatel.

Mohl mazat soubory.

Mohl instalovat spyware nebo keyloggery.

Mohl odesílat data na vzdálený server.

Digitální podpisy

Microsoft se pokusil rizika zmírnit zavedením digitálních podpisů (Authenticode). Uživatel byl před instalací dotázán, zda důvěřuje vydavateli prvku. To se však ukázalo jako neúčinné, protože uživatelé často dialogy bezmyšlenkovitě potvrzovali.

Současný stav a ústup

ActiveX je dnes považován za zastaralý (legacy) a nebezpečný systém.

Microsoft Edge: Moderní prohlížeč Edge již ActiveX vůbec nepodporuje.

HTML5: Většina funkcí, které dříve vyžadovaly ActiveX (přehrávání videa, práce s grafikou, nahrávání souborů), je dnes nativní součástí standardu HTML5, který je bezpečný a multiplatformní.

Internet Explorer 11: Byl posledním prohlížečem s podporou ActiveX, jeho podpora však byla ukončena.

Poznámka pro správce: Pokud narazíte na starý podnikový software (např. kamerové systémy nebo bankovní portály), které stále vyžadují ActiveX, lze je v moderním Windows spustit pouze pomocí „IE Mode“ v prohlížeči Microsoft Edge.

Související pojmy: COM, Internet Explorer, HTML5, Sandbox, Kybernetická bezpečnost.