Best practice per la difesa contro hotlinking e scraping delle immagini dal tuo sito

-1

Sto cercando di determinare il modo migliore per gestire alcuni problemi che ho trovato sulla gestione delle immagini per il mio sito.

Sfondo: Un piccolo sito che ospita informazioni sui film. Ho una sezione di amministrazione per caricare più immagini di film per film.

I file di immagine verrebbero ospitati su una rete CDN, quindi l'accesso sarebbe praticamente aperto. I riferimenti a ciascuna immagine verranno memorizzati nel database.

Vorrei: 1) Assicurati di poter prevenire il più possibile hot-linking 2) Avere il nome del file un po 'offuscato per impedire a un raschietto di incrementare semplicemente un parametro id nell'URL.

Finora, sto usando un generatore di stringhe casuale per trovare i nomi delle immagini che credo si occupino del n. 2.

Alla ricerca di una risposta al n. 1 e anche consigli e best practice.

    
posta user3953989 01.08.2017 - 21:40
fonte

3 risposte

0

La migliore difesa è richiedere all'utente di creare un account e accedere prima di fornire loro le informazioni.

È possibile utilizzare un CAPTCHA come parte del login senza influire troppo sull'esperienza utente. Oppure aggiungi un link su ogni link se apprezzi la sicurezza sull'usabilità.

Una volta che l'utente ha effettuato l'accesso, puoi offrire loro collegamenti specifici per l'utente. Che può essere rimosso se abusato.

Se le tue informazioni sono abbastanza preziose anche se posso semplicemente assumere un essere umano per scaricarlo.

    
risposta data 01.08.2017 - 22:10
fonte
1

Potresti richiedere l'autenticazione dal tuo CDN (a seconda delle capacità della tua CDN). Il sito Web può utilizzare credenziali (pubbliche) con il CDN in modo che i visitatori possano vedere le immagini, ma eventuali richieste esterne verranno negate dal CDN. Tuttavia, non impedisce a un visitatore del tuo sito di copiare l'immagine o le credenziali, e le persone potrebbero utilizzare le stesse credenziali al di fuori del tuo sito, ma i crawler non saranno così intelligenti, e nemmeno la maggior parte degli utenti, quindi potrebbe essere sufficiente per le tue esigenze.

In alternativa, puoi controllare l'intestazione di referer sul tuo CDN per consentire solo il tuo sito web, ma questo ha gli stessi lati negativi di cui sopra - l'intestazione del referer può essere falsificata.

Se si voleva davvero bloccarlo, si concederebbe token per uso singolo per caricare ogni immagine. Ma una volta che hai mostrato l'immagine a qualsiasi utente, non puoi impedire all'utente di copiare l'immagine o di fare uno screenshot e di caricarlo altrove. Potresti considerare l'aggiunta di filigrane alle tue immagini.

    
risposta data 01.08.2017 - 22:43
fonte
0

Avere accesso agli utenti per accedere ai contenuti privati è l'unico vero modo per prevenire gli scraper. C'è un caso legale in corso sull'uso di raschiare i dati pubblici di LinkedIn, quindi fino a quando non verrà risolto lo scraping rimarrà legale. Inoltre, assicurati di avere il tuo file robots.txt configurato correttamente, anche se questo fermerà solo i robot che rispettano il file.

Per quanto riguarda l'hotlinking, imposta Google Analytics e controlla da dove proviene il tuo traffico. Speriamo che il tuo CDN fornisca anche analisi di base per questo e assicurati di utilizzare una CDN che supporti i token di accesso per proteggere il contenuto. Tuttavia, sarei più preoccupato per le persone che scaricano i contenuti privati e li rimodellano.

    
risposta data 02.08.2017 - 06:42
fonte

Leggi altre domande sui tag