leesopdracht.txt (1727B) download
1Een JWT is een string seri�le data die ondertekend is met een sleutel. Eigenlijk is het een soort van cookie die allerlei informatie kan bevatten. Deze data worden in JSON-formaat verstuurd immers de naam JSON Web Token.
2Een JWT kan worden gebruikt als een authenticatie middel. Door gebruikersinformatie in de JWT te stoppen en dan deze informatie te ondertekenen. Vervolgens de JWT naar de gebruiker te versturen. Daarna stuurt de gebruiker de JWT mee bij de volgende requests. De server leest de JWT daarna uit en verifieert dat het om een authentieke JWT gaat omdat de sleutel klopt. Omdat de gebruikers informatie in de JWT staat hoeft de server geen database query te doen.
3Dit is ook het sterke punt van een JWT omdat de informatie in de cookie staat en de JWT op de client side is opgeslagen kan een JWT worden gebruikt om met een account op meerder websites in te loggen. Wat ook weer een nadeel met zich meebrengt omdat de JWT veel informatie bevat kost het veel bandbreedte om deze te versturen bij elke request.
4Als laatste maar zeker niet als minste. Een JWT mag nooit in local storage worden opgeslagen vanwege cross site scripting. Een JWT die in local storage staat kan worden gebruikt door andere scripts. Gebruik een JWT alleen als httpOnly cookie die niet gelezen of beschreven kan worden door javascript aan de gebruikerskant.
5Toepassingen op de projecten Memory en IWA. Bij memory heeft het gebruik van een JWT weinig toegevoegde waarde omdat het prima zou werken met een server managed session. Bij IWA-project is het anders omdat het voor het gebruik van een API wel toegevoegde waarde heeft. De API-token kan ook worden gebruikt als sleutel waardoor de server weet dat het een specifieke klant is.