‫Instructeur :
‫Donc, dans cette vidéo, nous allons utiliser un
‫autre package NPM afin
‫de définir quelques en-têtes http de sécurité très importants.
‫Ainsi, pour définir
‫ces en-têtes, nous utiliserons à nouveau une fonction middleware
‫qui viendra à nouveau d'un package NPM.
‫Alors, installons ça
‫et ça s'appelle un casque.
‫C'est donc une sorte de standard dans le développement express,
‫donc tous ceux qui créent
‫une application express devraient toujours utiliser ce package de casque, d'accord.
‫Car encore une fois, express n'utilise pas
‫toutes les meilleures pratiques de sécurité prêtes à l'emploi.
‫Et donc nous devons essentiellement les
‫mettre là-bas manuellement, d'accord.
‫Donc,
‫const, casque, exige, casque.
‫D'accord, faisons-le juste après celui-ci, et celui-ci ne pourrait pas
‫être plus simple, tout ce
‫que nous avons à faire est
‫d'appeler casque ici et cela produira
‫ensuite la fonction middleware qui devrait être placée ici, d'accord.
‫Donc dans l'appli. utiliser, nous
‫avons toujours besoin d'une fonction, pas d'un appel de fonction, n'est-ce pas ?
‫Donc ici, nous appelons cette
‫fonction et cela retournera à son tour
‫une fonction qui restera ici jusqu'à ce qu'elle soit appelée, d'accord.
‫Et il est préférable d'utiliser ce package de casque
‫au début de la pile
‫middleware afin que ces en-têtes soient vraiment sûrs d'être définis, d'accord.
‫Donc, ne le mettez pas comme
‫quelque part
‫à la fin, mettez-le juste au début et en
‫fait, mettons-le vraiment ici au début comme le premier de tous les middlewares, d'accord.
‫Et nous développons vraiment notre pile de middleware ici,
‫donnons simplement un nom à chacun d'eux.
‫Donc, sécurité, HTP, en-têtes.
‫Cela bien sûr, pas correct.
‫et aussi, utilisons un VRP.
‫Définissez la sécurité HTP, limitez
‫les demandes
‫de la même API.
‫Maintenant, nous avons ici aussi celui-ci.
‫Il s'agit donc essentiellement de la journalisation du développement.
‫Ensuite, celui-ci s'appelle l'analyseur corporel.
‫Donc, fondamentalement, lire
‫les données du corps dans req. corps.
‫D'accord.
‫Et en fait, puisque nous
‫sommes ici, implémentons ce que j'ai mentionné
‫dans la conférence
‫théorique où j'ai dit que nous pouvons limiter la
‫quantité de données qui entrent dans le corps.
‫Vous vous en souvenez ?
‫Donc, ici dans json, nous pouvons réellement spécifier certaines
‫options et pour cela comme toujours
‫nous passons un objet.
‫Et donc
‫nous pouvons dire ici, limitons-le et limitons-le à 10 kilo-octets, d'accord.
‫Et donc le package
‫comprendra qu'il analysera cette chaîne ici
‫en une donnée significative, d'accord ?
‫Et maintenant, quand nous avons un corps de plus de 10
‫kilo-octets, il ne sera fondamentalement pas accepté, d'accord ?
‫Enfin, celui-ci
‫est destiné à
‫servir des fichiers statiques, d'accord.
‫Et c'est finalement juste comme, quelques middleware de test ici.
‫Gardons-le ici parce que parfois c'est utile.
‫Par exemple, pour avoir jeté un œil aux en-têtes
‫ici comme nous le faisions à l'époque.
‫D'accord, c'est donc un casque.
‫Faisons maintenant
‫une requête, puis examinons tous les en-têtes
‫qu'elle nous donne en gros.
‫Alors envoyons-le ici et maintenant
‫vous voyez que nous avons 14 en-têtes.
‫C'est donc beaucoup plus qu'avant et
‫donc les nouveaux sont essentiellement celui-ci ici, contrôle
‫de prélecture désactivé.
‫nous avons cette sécurité de transport stricte,
‫vous avez les options de téléchargement, il
‫y a aussi celle-ci ici pour la protection XSS
‫et donc le navigateur comprend
‫ces en-têtes et peut ensuite agir sur eux essentiellement, d'accord.
‫Jetons rapidement un coup
‫d'œil à la documentation du casque.
‫Alors bien sûr,
‫comme toujours, c'est sur GitHub.
‫Et donc ici, vous voyez essentiellement tous les middlewares
‫qui sont inclus.
‫Parce que le casque est
‫en fait une collection de plusieurs middlewares.
‫C'est donc en fait ce qui est dit ici.
‫C'est donc une collection de 14 middlewares plus
‫petits et certains d'entre eux sont actifs
‫par défaut qui
‫sont ceux-ci marqués comme ceci.
‫Et donc si vous
‫êtes intéressé, vous pouvez jeter un œil à tous ces
‫autres et ensuite si vous pensez avoir besoin
‫de certains d'entre eux, vous pouvez bien sûr les activer spécifiquement.
‫et il vous dit également
‫comment faire cela ici dans la documentation, d'accord.
‫Mais je vais bien avec les
‫options par défaut Et donc...
‫Maintenant, c'était en fait très
‫simple et passons maintenant rapidement à la vidéo suivante.