‫Istruttore: Quindi,
‫in questo video, useremo un altro pacchetto
‫NPM per impostare un
‫paio di intestazioni http di sicurezza davvero importanti.
‫Quindi, per impostare
‫queste intestazioni utilizzeremo ancora una volta una funzione middleware
‫che verrà nuovamente da un pacchetto NPM.
‫Quindi, installiamolo
‫e si chiama casco.
‫Quindi questo è una specie di standard nello sviluppo espresso,
‫quindi tutti coloro che stanno
‫creando un'app express dovrebbero sempre utilizzare questo pacchetto di caschi, d'accordo.
‫Perché ancora una volta, express non
‫utilizza tutte le migliori pratiche di sicurezza predefinite.
‫E quindi fondamentalmente dobbiamo andare avanti manualmente
‫e metterli lì, ok.
‫Quindi,
‫const, casco, richiedi, casco.
‫Ok, quindi facciamo questo subito dopo questo, e questo non
‫potrebbe essere più semplice, tutto
‫ciò che dobbiamo fare è chiamare
‫helmet qui e così questo produrrà
‫la funzione middleware che dovrebbe essere messa proprio qui, ok.
‫Quindi nell'app. uso, abbiamo
‫sempre bisogno di una funzione, non di una chiamata di funzione, giusto?
‫Quindi qui chiamiamo questa funzione
‫e questa a sua volta restituirà una
‫funzione che rimarrà qui finché non verrà chiamata, va bene.
‫Ed è meglio usare questo pacchetto casco all'inizio dello
‫stack del middleware in modo
‫che queste intestazioni siano davvero sicure di essere impostate, ok.
‫Quindi non metterlo come da
‫qualche parte
‫alla fine, mettilo proprio all'inizio e in realtà
‫mettiamolo qui all'inizio come il primo di tutti i middleware, ok.
‫E stiamo davvero facendo crescere il nostro stack di middleware
‫qui, diamo a ciascuno di loro un nome.
‫Quindi, sicurezza, HTP, intestazioni.
‫Questo ovviamente non è corretto.
‫e anche noi usiamo effettivamente un VRP.
‫Imposta HTP di sicurezza, limita
‫le
‫richieste dalla stessa API.
‫Ora qui abbiamo anche questo.
‫Quindi questo è fondamentalmente il registro dello sviluppo.
‫Allora questo qui è chiamato il parser del corpo.
‫Quindi fondamentalmente leggendo
‫i dati dal corpo in req. corpo.
‫Va bene.
‫E in effetti, visto che
‫siamo qui, implementiamo quella cosa che ho
‫menzionato nella lezione
‫di teoria in cui ho detto che possiamo limitare
‫la quantità di dati che arrivano nel corpo.
‫Ricordati che?
‫Quindi, qui in json, possiamo effettivamente specificare alcune
‫opzioni e per questo come sempre
‫passiamo un oggetto.
‫E quindi
‫qui possiamo dire, limitiamolo e limitiamolo a 10 kilobyte, ok.
‫E quindi il pacchetto
‫capirà che analizzerà questa stringa
‫qui in dati significativi, va bene?
‫E quindi ora, quando abbiamo un corpo più grande di
‫10 kilobyte, praticamente non sarà accettato, ok?
‫Quindi, finalmente,
‫questo qui è
‫per servire file statici, ok.
‫E questo è finalmente proprio come, alcuni middleware di prova qui.
‫Teniamolo qui perché a volte è utile.
‫Ad esempio, per dare un'occhiata alle intestazioni
‫qui come facevamo allora.
‫Ok, allora quello è il casco.
‫Facciamo ora una
‫richiesta e poi diamo un'occhiata a tutte le
‫intestazioni che ci dà fondamentalmente.
‫Quindi mandiamolo qui e
‫ora vedete che abbiamo 14 intestazioni.
‫Quindi è molto più di prima
‫e quindi i nuovi sono fondamentalmente questo qui,
‫precarica il controllo.
‫abbiamo questa rigorosa sicurezza di trasporto, hai
‫le opzioni di download, c'è anche questa
‫qui per la protezione XSS e quindi il browser
‫capisce queste intestazioni e può
‫quindi agire su di esse in pratica, va bene.
‫Diamo subito un'occhiata
‫alla documentazione del casco.
‫Quindi, ovviamente,
‫come sempre è su GitHub.
‫E quindi qui puoi vedere praticamente tutti i
‫middleware inclusi.
‫Perché il casco è
‫in realtà una raccolta di più middleware.
‫Quindi questo è in realtà ciò che si dice qui.
‫Quindi è una raccolta di 14 middleware più
‫piccoli e alcuni di essi sono attivi per
‫impostazione predefinita, che sono
‫questi qui contrassegnati in questo modo.
‫Quindi, se sei
‫interessato, puoi dare un'occhiata a tutti questi altri
‫e poi, se pensi di aver bisogno
‫di alcuni di loro, puoi ovviamente attivarlo in modo specifico.
‫e ti dice come
‫farlo anche qui nella documentazione, ok.
‫Ma sto bene solo con le
‫opzioni predefinite E quindi...
‫In realtà era molto
‫semplice, quindi passiamo rapidamente al prossimo video.