ActiveX
Hvad er ActiveX?
ActiveX er en forældet softwareteknologi fra Microsoft, som blev introduceret i 1996. Teknologien bygger videre på de ældre standarder Component Object Model (COM) og Object Linking and Embedding (OLE), og formålet var at gøre det muligt at genbruge små programkomponenter — såkaldte ActiveX-kontroller — på tværs af forskellige programmer på en computer.
I stedet for at udviklere skulle skrive den samme funktionalitet igen og igen, kunne de bygge en ActiveX-kontrol én gang og genbruge den i mange forskellige applikationer.
Sådan fungerer ActiveX-kontroller
En ActiveX-kontrol er reelt et lille selvstændigt program, der udfører en bestemt opgave, fx at vise en kalender, afspille en video eller generere en rapport. Kontrollen implementeres typisk som et dynamic link library-modul (DLL), der kører inde i en “container” – altså det program, den er indlejret i. Udviklere skriver ofte ActiveX-kontroller i programmeringssprog som Visual Basic eller C++, fordi disse sprog understøtter Microsofts COM-standard. Konceptuelt minder en ActiveX-kontrol meget om en Java-applet, men hvor Java-teknologien understøtter flere platforme, er ActiveX i praksis stort set kun brugt på Windows-computere med x86-processorer.
Eksempler på brug af ActiveX
ActiveX blev historisk mest kendt som en plugin-teknologi i Internet Explorer, hvor en webside kunne indlejre en ActiveX-kontrol via en OBJECT-tag i HTML-koden. Når en bruger besøgte siden, blev kontrollen automatisk downloadet og installeret, ofte med meget lidt eller ingen brugerinvolvering. På den måde kunne en virksomheds webapplikation for eksempel vise interaktive lagerrapporter eller afspille video direkte i browservinduet.
Men ActiveX blev også brugt langt bredere end i browseren. Programmer som Microsoft Word, Excel, Visual Studio og Windows Media Player anvender eller har anvendt ActiveX-kontroller til at udvide deres funktioner. Et klassisk eksempel er en udvikler, der tilføjer en ActiveX-kontrol til et Word-dokument, så brugeren kan udfylde en interaktiv formular direkte i dokumentet. Andre Microsoft-teknologier byggede videre på selve ActiveX-rammen, blandt andet Active Server Pages (ASP), ActiveX Data Objects (ADO) og det scripting-baserede Active Scripting, som stadig findes visse steder i dag.
Sikkerhedsrisici ved ActiveX
ActiveX-kontroller har historisk været forbundet med betydelige sikkerhedsrisici. Fordi en kontrol kan opnå meget vidtgående adgang til det underliggende system og endda til ressourcer på en server eller netværk, kan en ondsindet kontrol i værste fald ændre adgangskoder, tilgå fortrolige data eller installere skadelig software. Angreb sker ofte via phishing, hvor et offer lokkes ind på en falsk hjemmeside og bliver bedt om at installere en tilsyneladende harmløs ActiveX-kontrol. Microsoft har over årene indført sikkerhedsforanstaltninger som digital signering af kontroller og strammere standardindstillinger, men teknologien har aldrig kunnet gøres fuldstændig sikker.
Netop af sikkerhedsmæssige og platformsmæssige årsager anses ActiveX i dag som en forældet (deprecated) teknologi. Microsoft Edge understøtter som udgangspunkt ikke ActiveX, men tilbyder en særlig “Internet Explorer-tilstand” (IE mode), hvor ældre virksomhedsapplikationer, der stadig kræver ActiveX, kan køre videre. De fleste moderne browsere har enten helt droppet understøttelsen eller deaktiveret ActiveX som standard.