Webapplicatie
Webapplicatie is een term die wordt gebruikt voor een programma dat op een webserver draait en via de webbrowser kan worden benaderd. Een webapplicatie bestaat uit één of meerdere scripts (zie server-side scripting) die gebruikmaken van dezelfde brongegevens op een webserver. Die brongegevens kunnen bijvoorbeeld in een database staan.
Een voorbeeld van een webapplicatie wordt gevormd door webmailapplicaties (zoals Outlook.com) die een gebruiker in staat stellen om e-mail te ontvangen en versturen met een webbrowser. Een dergelijke applicatie bestaat onder andere uit een aanmeldpagina, een overzichtspagina met de onderwerpen van de ingekomen e-mailberichten, een pagina om een specifiek bericht te lezen, een pagina om een nieuw bericht te schrijven en een script om het nieuwe bericht te versturen.
Voordelen
- Webapplicaties vereisen geen ingewikkelde installatieprocedure bij het uitrollen in een grote organisatie. Alleen een webbrowser is vereist.
- Webapplicaties hebben geen schijfruimte op de clientcomputer nodig.
- Voor een update in de webapplicatie hoeven er geen wijzigingen op de werkplek gedaan te worden.
- Webapplicaties zijn makkelijk te integreren met andere websites of webservices.
- Webapplicaties zijn in de basis platformonafhankelijk (Windows, Mac, Linux etc.) doordat ze in een webbrowser draaien.
Sessies
Een belangrijk element van een webapplicatie is de gebruikerssessie (in het Engels session genoemd). Een gebruikersessie zorgt ervoor dat de verschillende scripts van een applicatie weten welke gebruiker het script aanroept. Een webbrowser ontvangt bij het opvragen van het eerste script van een applicatie een speciaal cookie, het session cookie, dat een unieke waarde bevat. Een browser stuurt deze cookie bij elke volgende aanvraag in de webapplicatie mee als header. Op een webserver kan op basis van de unieke waarde van deze cookie, worden bijgehouden of bijvoorbeeld de zender is aangemeld, en zo ja welke gebruiker het is. Dit voorkomt dat gebruikers op elke pagina opnieuw moeten aanmelden. Een webapplicatie kan op basis van de waarde van de session variables een verschillende inhoud aan pagina's geven. Zo ziet elke aangemelde gebruiker van een webmailapplicatie alleen eigen e-mailberichten en niet de berichten van een andere gebruiker.
Kwetsbaarheden
Webapplicaties kunnen kwetsbaarheden bevatten die door hackers kunnen worden misbruikt. De kwetsbaarheden zijn door het Open Web Application Security Project (OWASP) onderverdeeld in een tiental categorieën.
- Niet-gevalideerde input
- Fouten in de toegangscontrole
- Fouten met authenticatie en in sessiemanagement
- Cross-site scripting (XSS)
- Bufferoverloop
- SQL-injectie
- Onjuiste foutafhandeling
- Onvoldoende beschermde opslag
- Denial of service
- Fouten in configuratiebeheer
Webtesten
Voordat een webgebaseerd systeem live gaat, wordt het volledig getest (Web testing). Zo kunnen problemen worden aangepakt voordat het systeem aan het publiek wordt uitgerold; mogelijke problemen zijn de toegankelijkheid voor gebruikers, beveiliging van de webapplicatie en de functionaliteit van de site.
Zie ook
- JavaScript
- CSS
- DHTML
- AJAX
- Software engineering
- LAMP
- ASP
- ASP.NET
- Web 2.0
- Webservices
- World Wide Web Consortium
- Django (framework)
Externe link
- (en) OWASP