|
|
Pubblicato su 13/09/2018 13:03:22
|
|
|

Questo articolo descrive una proposta per un parametro metadati per un referer nel protocollo HTTP, utilizzando il quale la documentazione HTML può controllare se inviare un referer, solo un nome host o un referer completo. Sebbene esistano modi per controllare i referer, come il flash, e alcuni trucchi js, questo articolo descrive una storia diversa.
Scenari d'uso
In alcuni casi, questo parametro dei metadati del referer può essere utilizzato quando un sito web vuole controllare le informazioni del referer che una pagina invia al server per diversi motivi.
Privacy
I social network generalmente hanno pagine personali degli utenti, in cui gli utenti possono aggiungere alcuni link a Internet, e i social network potrebbero non voler far trapelare l'URL della pagina utente quando l'utente clicca su questi link, poiché questi URL possono contenere informazioni sensibili. Ovviamente, alcuni siti di social network potrebbero voler semplicemente fornire un nome host nel referente invece delle informazioni complete dell'URL.
Sicurezza
Alcuni siti che usano https possono utilizzare un parametro (sid, ecc.) nell'URL come credenziali utente, e devono importare risorse da altri siti https, nel qual caso il sito certamente non vuole rivelare le informazioni sulle credenziali dell'utente.
Disciplina Oggetto-Capacità
Alcuni siti seguono la Disciplina delle Capacità Oggetto, e il referer è esattamente l'opposto di questa strategia, quindi sarebbe vantaggioso per il sito poter controllare il refeer.
Dettagli tecnici:
Il parametro metedata del referente può essere impostato ai seguenti tipi di valori:
mai sempre Origine predefinito Se inserisci un meta tag nel tuo documento e l'attributo name ha un valore di referer, il client del browser gestirà il tag come segue:
Dopo i passaggi sopra, quando il browser effettuerà una richiesta HTTP in futuro, risponderà in base al valore del contenuto come segue (il valore della referer-policy qui sotto è il valore del contenuto nel meta tag):
esempio Se la pagina contiene i seguenti meta tag, tutte le richieste dalla pagina corrente non avranno un referente:
Se la pagina contiene il seguente meta tag, la richiesta HTTP dalla pagina corrente conterrà solo la parte di origine (nota: a seconda del contesto nel testo originale, capisco che qui origine è un URL parziale contenente schema e nome host, non altre parti di URL dopo il percorso, ecc.), non l'URL completo:
Nota: Quando si utilizzano i meta tag descritti in questo articolo, la policy del referer originale del browser sarà infranta, ad esempio saltando da una pagina del protocollo http a una pagina https, se viene impostato il valore appropriato, anche il referer verrà portato.
Altre domande Cosa c'entra questo con rel=noreferer? È possibile che rel=noreferer sovrascriva il valore imposto dal meta tag in questo articolo. Cioè, copertura funzionale. Le informazioni di origine non sono un URL completo, quindi il client del browser probabilmente aggiungerà un / dopo l'origine come parte di percorso. Cosa succederebbe se l'origine fosse unica? Si stima che il referente verrà ignorato.
|
Precedente:Il percorso di classe contiene più binding SLF4J.Prossimo:Effetti del clic del mouse nel front-end: libertà, democrazia, prosperità
|