Arcjet è una libreria che offre un layer di sicurezza aggiuntivo nello sviluppo di applicazioni su Node.JS. Può essere utilizzato anche con altre piattaforme come Next.js, Vercel, Netlify e Fly.io ma per il momento si tratta di un progetto ancora in fase di betatest. Per partecipare è sufficiente iscriversi e si potranno sfruttare sin da subito tutte le funzionalità disponibili, implementandole con poche righe di codice. Presto dovrebbero essere disponibili anche delle varianti dedicate a Django (Python), Ruby on Rails e Laravel (PHP).
Arcjet: protezione dai bot
Questa soluzione può essere utilizzata contro tutte le minacce che potrebbero pregiudicare la sicurezza di applicazioni sviluppate con il nome ambiente di runtime JavaScript. A cominciare dalla protezione dai bot. Questi ultimi vengono infatti rilevati automaticamente con la possibilità di differenziare le autorizzazioni di accesso.
Alcuni bot svolgono infatti una funzione positiva, basti pensare crawler dei motori di ricerca, ai servizi collegati ad API di terze parti e ai processi di monitoraggio. Altri possono essere esclusi tramite Arcjet limitando il traffico meno utile, bloccando le richieste che non provengono da utenti reali o sbarrando la strada ai client che effettuano attività malevole.
Sicurezza contro gli attacchi più diffusi
Arcjet si rivela utile anche quando si devono verificare e validare gli indirizzi di posta elettronica. Così come nella protezione delle applicazioni contro gli attacchi più comuni (SQL injection, Cross-site scripting, PHP e Java code injection..). Per far questo la piattaforma opera un monitoraggio costante delle richieste isolando quelle che vengono effettuate più frequentemente nei tentativi di violazione.
Installare Arcjet è molto semplice, basta lanciare la seguente istruzione basata su npm:
npm install @arcjet/node
La sua architettura è stata progettata sulla base di tre principi: il controllo completo sel contesto di un'applicazione, la semplificazione dei test per le regole di sicurezza e la non interferenza con il funzionamento di un'applicazione, senza impatti negativi sulle performance. I componenti di base sono invece due: Arcjet SDK, che viene installato direttamente nell'applicazione, e la Arcjet Cloud API accessibile tramite l'SDK.