E 'possibile verificare che una connessione socket provenga da una particolare pagina web?

4

Supponiamo di implementare un API di streaming basato su websocket a stream.myapp.com . Uno dei consumatori di questa API è il tuo sito web myapp.com . La mia domanda è se stream.myapp.com possa verificare che le connessioni provengano da myapp.com di pagine web caricate nel browser. Fondamentalmente voglio avere un livello di autenticazione per le connessioni non myapp.com . È possibile fare in modo sicuro? O dovrò implementare qualcosa come generare token per ogni pagina caricata per myapp.com ?

    
posta The Puma 13.02.2018 - 03:35
fonte

1 risposta

1

I WebSocket non sono vincolati dalla politica della stessa origine, ma il protocollo definisce un'intestazione Origin. Questo è impostato dalla pagina o dal server che crea la connessione.

Questo è praticamente il modo in cui un'applicazione su cui lavoro lo gestisce; c'è un filtro davanti all'endpoint WebSocket, che controlla l'origine rispetto a un elenco di origini approvate (un dominio specifico, utilizzando HTTP o HTTPS). Se questo corrisponde, lo permettiamo; altrimenti, è respinto.

C'è un po 'più di informazioni sull'utilizzo dell'intestazione Origin in questa risposta .

    
risposta data 13.02.2018 - 11:22
fonte

Leggi altre domande sui tag