Creazione di uno strumento di terze parti che richiede il token di autenticazione dell'utente per il servizio

0

Voglio raschiare dati da Fanball.com per tenere traccia dei giocatori di football fantasy che ho preparato e creare una visualizzazione della mia esposizione a diversi giocatori. Questo è uno strumento che ho visto richiedere ad altre persone e vorrei renderlo disponibile ad altri utenti. Al fine di raschiare i dati dei tuoi campionati è necessario il tuo token di autenticazione. Come potrei fare per creare questo strumento per le altre persone in modo che io possa usare il loro token di autenticazione fanball per analizzare i dati, senza effettivamente avere il token auth o una password sul mio server. Invece di un'app Web, sarebbe meglio creare un'app desktop che si connetta al web? in questo modo possono inserire le loro informazioni e sono memorizzate sulla loro macchina?

    
posta Jacob Alley 03.04.2018 - 04:30
fonte

1 risposta

0

A meno che il server non sia configurato per consentire questo utilizzo, probabilmente verrà immediatamente bloccato, nel browser, da Cross-Origin Resource Sharing (CORS). Non ho mai capito completamente i vettori di attacco che CORS protegge, ma uno di questi è l'abuso della stessa situazione che stai suggerendo: l'accesso a un sito di terze parti senza l'approvazione di terze parti o dell'utente.

link

Per fare ciò che stai chiedendo, all'interno del framework CORS, il server dovrebbe essere un partecipante attivo. Dovrebbero restituire le intestazioni corrette su una richiesta OPZIONI pre-volo per supportare CORS per il dominio del tuo sito.

Per alcuni siti, potrebbero aver configurato CORS per essere molto permissivi e quindi potresti semplicemente entrare di nascosto. Ma dovrebbero lasciare la porta aperta per te.

Un altro modo in cui potrebbero volere aiutarti a raggiungere questo tipo di interazione è fornire un'API, con il supporto di OAuth. Potresti quindi utilizzare il "flusso implicito" di OAuth per autenticare interamente nel browser e non avresti mai avuto accesso al loro token. Il flusso implicito è alquanto meno sicuro sebbene ... di solito è meglio avere un server coinvolto nelle chiamate API con OAuth. In tal caso, non avresti mai avuto la loro password e il tuo accesso all'API potrebbe essere limitato dal permesso che ti hanno dato, ma il loro browser non conserverebbe il token che hanno recuperato per poterlo utilizzare.

Se vuoi fare scraping da un sito che non è un partecipante disponibile, non dovresti essere in grado di farlo da un browser web senza accedere alla password o al token di autenticazione. Un'app desktop potrebbe essere la soluzione giusta.

Se vuoi essere sincero su questo, puoi lanciare la tua idea su Fanball.com e vedere se ti apriranno un'API. Potresti essere in grado di convincerli che la tua applicazione potrebbe aggiungere valore al loro servizio.

    
risposta data 03.04.2018 - 05:47
fonte

Leggi altre domande sui tag