Collegamento
Come per la connessione da JavaScript, puoi fare richieste HTTP (S) usando normali strumenti client, o XHR in semplice JavaScript o utilizzando oggetti framework come jQuery.ajax () da jQuery o < a href="https://docs.angularjs.org/api/ng/service/%24http"> $ http da Angular. I WebSocket sono disponibili anche dai browser di supporto. Ecco un tutorial su come iniziare.
Sicurezza
Voglio indirizzare 3 livelli di sicurezza separati qui.
Prima c'è la sicurezza a livello di connessione. Questo risponde alla domanda: qualcuno che non sia il cliente e il server può vedere i dati trasmessi. Usando HTTP, qualsiasi dispositivo che può vedere il tuo traffico (altri utenti wifi, router tra client e server) può intercettare i dati e leggerli perché è un testo normale. HTTPS aiuta a risolvere questo problema crittografando i dati in modo che, anche se possono essere intercettati, non possono essere compresi (in pratica). Inoltre, HTTPS non è ancora considerato sicuro se non si ottiene un certificato firmato. Un certificato firmato è essenzialmente garantito da un'autorità fidata.
In secondo luogo, c'è l'autenticazione. Un particolare cliente può accedere alla mia applicazione? Avendo solo HTTPS, qualsiasi client (ad esempio il browser che naviga verso l'URL) può ancora accedere ai dati. È necessario aggiungere un'autenticazione (accesso) alla propria applicazione in modo da poter collegare quel particolare client a un utente valido del sistema. Comune oggi è l'autenticazione basata su token in cui si rilascia un token quando l'utente si autentica con successo. Quindi il token viene inviato con ogni richiesta per identificare l'utente. Per sicurezza, questo richiede HTTPS. In caso contrario, il token può essere letto, copiato e utilizzato da qualsiasi ascoltatore. I termini di ricerca qui sono OAuth
, bearer token
.
Terzo, c'è Autorizzazione. Avendo solo l'autenticazione, puoi dire che è un utente valido del sistema, ma non puoi ancora dire cosa è in grado di fare quell'utente nel sistema. Se tutti gli utenti sono in grado di eseguire le stesse azioni, l'autenticazione è sufficiente. Tuttavia, se alcuni utenti hanno diverse operazioni disponibili da altri, allora è necessario anche l'Autorizzazione per istruire il server su ciò che l'utente è autorizzato (autorizzato) a fare. Il modo comune per farlo è tramite Ruoli o Reclami. Quando l'utente viene autenticato, spesso l'autorizzazione dell'utente (ruolo o elenco di attestazioni) viene anche caricata in memoria. Le richieste successive con lo stesso token possono cercare le autorizzazioni dell'utente per decidere se possono o meno eseguire l'operazione specificata nel sistema. I termini di ricerca qui sono Role-based
o Claims-based
authorization
.