(Legacy) Valutazione della prevenzione del tracciamento - Apple Safari
- Argomenti:
- Autenticazione
Safari 10
Dettagli
A partire da Safari 10, le impostazioni predefinite della privacy del browser impediranno il funzionamento delle funzioni Single Sign-On (SSO), Single Logout (SLO) e autenticazione passiva. Il Single Sign-On (SSO) e l’autenticazione passiva non funzioneranno nemmeno in
la stessa sessione tra più schede o finestre del browser.
Queste modifiche influiscono sui processi di autenticazione di Adobe Pass e hanno un impatto su di essi
per le seguenti versioni di AccessEnabler JavaScript SDK: v2 (versioni 2.x), v3 (versioni 3.x), v4 (versioni 4.x).
Mitigazione
Per attenuare queste limitazioni, puoi chiedere all'utente di modificare le impostazioni di privacy del browser Safari 10 e di utilizzare l'opzione "Consenti sempre" per la voce "Cookie e dati del sito Web" nella scheda Privacy del browser da Preferenze, come illustrato nell'immagine seguente.
Safari 11
Dettagli
A partire da Safari 11, il browser introduce il meccanismo Intelligent Tracking Prevention(ITP), una tecnologia che utilizza l'euristica per impedire il tracciamento tra siti diversi. Queste euristiche influiscono sul modo in cui i cookie di terze parti vengono memorizzati e riprodotti nelle chiamate di rete, il che significa che, a seconda dell’attivazione del meccanismo ITP, il browser Safari bloccherà i cookie di terze parti nella comunicazione del modello client-server.
Il servizio di autenticazione di Adobe Pass utilizza e si basa sui cookie come parte del processo di autenticazione per funzionare. In situazioni in cui il processo di autenticazione si svolge automaticamente (ad esempio, Temp Pass) o in implementazioni che utilizzano iFrame o la funzionalità "senza aggiornamento", i cookie di Adobe sono considerati cookie di terze parti e bloccati per impostazione predefinita. Per tutti gli altri casi, Safari utilizza un algoritmo di apprendimento automatico che potrebbe contrassegnare tutti i cookie del servizio di autenticazione delle passate di Adobe come cookie di tracciamento, essendo quindi soggetti al blocco di ITP.
In conclusione, un utente del browser Safari 11 potrebbe non essere in grado di eseguire l’autenticazione su un sito web abilitato all’autenticazione di Adobe Pass dopo l’attivazione del meccanismo ITP (Intelligent Tracking Prevention), in particolare quando utilizza più siti web abilitati all’autenticazione di Adobe Pass. Di conseguenza, l’esperienza di autenticazione dell’utente potrebbe essere inaspettata e non definita, dall’impossibilità di accedere a una durata di autenticazione più breve del previsto.
Queste modifiche influiscono sui processi di autenticazione di Adobe Pass per le seguenti versioni di AccessEnabler JavaScript SDK: v2 (versioni 2.x), v3 (versioni 3.x) e hanno un impatto su di essi.
Mitigazione
Sia per AccessEnabler JavaScript SDK v3 (versioni 3.x) che per AccessEnabler JavaScript SDK v4 (versioni 4.x), la libreria contiene un meccanismo in grado di identificare le situazioni in cui l’autenticazione dell’utente è stata bloccata a causa di cookie richiesti mancanti. In queste situazioni la libreria attiva un callback di errore specifico N130, che viene passato al sito Web abilitato per l'autenticazione di Adobe Pass per essere utilizzato come segnale per istruire l'utente ad eseguire azioni che possono attenuare il problema. Per beneficiare di questo meccanismo, il sito Web deve implementare la specifica Segnalazione errori.
Per AccessEnabler JavaScript SDK v2 (versioni 2.x), la libreria non offre il meccanismo descritto sopra, pertanto il sito web abilitato all’autenticazione di Adobe Pass non può essere segnalato quando istruire l’utente a intraprendere azioni per mitigare il problema.
L'elenco di azioni che possono attenuare i problemi sopra indicati si applica a tutte e tre le versioni di AccessEnabler JavaScript SDK.
Quando viene ricevuto il callback di errore N130 dal sito Web dell'implementatore, l'utente deve essere istruito a disabilitare Intelligent Tracking Prevention (ITP) e abilitare i cookie di terze parti:
-
In caso di Mac OS X High Sierra e versioni successive: deselezionare l'opzione "Impedisci il rilevamento intersito" per la voce "Tracciamento del sito Web" nella scheda Privacy del browser da Preferenze, come illustrato nell'immagine seguente.
-
In caso di Mac OS X Sierra e versioni precedenti: controllo dell'opzione "Consenti sempre" per la voce "Cookie e dati del sito Web" nella scheda Privacy del browser da Preferenze, come illustrato nell'immagine seguente.
Safari 12
Dettagli
Questa sezione descrive i problemi di compatibilità di AccessEnabler JavaScript SDK versioni 4.x in Safari 12.
Funzionalità certificata di AccessEnabler JavaScript SDK v4 (versioni 4.x) su Safari 12
I flussi di autenticazione che utilizzano l'interazione dell'utente funzioneranno sempre, anche se nel browser dell'utente i cookie di terze parti sono disabilitati, perché a partire dalla versione 4.0 AccessEnabler JavaScript SDK non utilizza più i cookie di terze parti per i processi di autenticazione.
Le operazioni Autorizzazione/Verifica preliminare/Metadati utente sono completamente funzionanti, a condizione che l'utente sia già autenticato.
Problemi noti di AccessEnabler JavaScript SDK v4 (versioni 4.x) su Safari 12
-
SSO e SLO
- A causa del modo in cui localStorage viene implementato in Safari a partire da Safari 10, JS SDK non può più condividere lo stato di accesso tramite un iFrame di dominio comune. Ciò significa che l’utente deve effettuare l’accesso a ogni sito che utilizza AccessEnabler JavaScript SDK. La disconnessione inoltre non elimina i token di autenticazione tra siti, pertanto l’utente deve disconnettersi da ogni sito web abilitato all’autenticazione di Adobe Pass.
-
Passaggio temporaneo
- Per i passaggi temporanei, AccessEnabler JavaScript SDK utilizza un meccanismo di personalizzazione per bloccare un token di autenticazione su un dispositivo specifico (istanza del browser). A causa dei nuovi meccanismi di Safari 12 progettati per impedire il tracciamento, l'impronta digitale che stiamo calcolando e utilizzando nel meccanismo di individualizzazione sarà la stessa per tutti gli utenti che hanno lo stesso indirizzo IP. Prendiamo in considerazione l’IP del cliente a scopo di personalizzazione, ma anche in questo caso l’impatto è sugli utenti che condividono lo stesso indirizzo IP pubblico. Per questi utenti, calcoleremo lo stesso ID di individualizzazione e il passaggio temporaneo sarà associato a esso. Ciò significa che, una volta che tale utente utilizza un pass temporaneo, nessun altro potrà accedervi ! Questo interessa in particolare gli utenti aziendali, gli istituti di istruzione o qualsiasi altra organizzazione che ha più utenti che utilizzano NAT o un proxy comune per accedere a Internet.
-
Flussi automatici
- I flussi di autenticazione tentati in modalità automatizzata, senza alcuna interazione da parte dell’utente, non avranno esito positivo in Safari 12 quando si utilizza JS SDK 4.0. In JS SDK 4.1 verranno risolti tutti i problemi relativi ai flussi automatizzati.
Casi d’uso interessati da questo problema:
-
Autenticazione TempPass automatica (anteprima gratuita): per tali flussi, SDK genera un errore N130.
-
Autenticazione passiva (non riuscita): all’utente viene richiesto di selezionare questo MVPD e immettere le credenziali
Mitigazione
SSO e SLO
Al momento della stesura di queste note non è disponibile o possibile alcuna mitigazione nota. Apple ha introdotto un'"API di accesso all'archiviazione" in Safari 12 (https://webkit.org/blog/8124/introducing-storage-access-api
), ma l'implementazione corrente non si applica a localStorage ma solo ai cookie. Inoltre, per utilizzare l’API è necessaria l’interazione dell’utente e, una volta utilizzata, all’utente viene richiesta anche una finestra di dialogo per l’autorizzazione simile a quella riportata di seguito.
A questo punto questi requisiti/prompt di Safari non si allineano con i nostri requisiti UX e non abbiamo un comportamento coerente come su altri browser, dove SSO "funziona solo" una volta salvato un token in un dominio comune localStorage.
Passaggio temporaneo
Per mitigare i problemi di individualizzazione e consentire l'interazione con l'utente, si consiglia di utilizzare Passaggio temporaneo promozionale in modo interattivo e di fornire almeno un'informazione aggiuntiva sull'utente (ad esempio, l'indirizzo e-mail).
Safari 13
Dettagli
A partire da Safari 13, il browser introduce nuove modifiche alla Intelligent Tracking Prevention (ITP), rendendo l'euristica alla base del meccanismo più rigorosa nel processo di contrassegnare i cookie di terze parti come cookie di tracciamento, al fine di impedire il tracciamento tra siti diversi.
Come descritto nelle sezioni precedenti, il servizio di autenticazione di Adobe Pass utilizza e si basa su cookie di terze parti come parte dei processi di autenticazione quando gli implementatori utilizzano AccessEnabler JavaScript SDK v2 (versioni 2.x) e AccessEnabler JavaScript SDK v3 (versioni 3.x). Rispetto alle versioni precedenti del browser Safari, quando ITP interveniva dopo un po’ di tempo per "apprendere" l’interazione tra l’utente e le parti interessate (siti web e Adobe del programmatore), il browser Safari 13 blocca fin dall’inizio i cookie di terze parti che sono considerati cookie di tracciamento nella comunicazione modello client-server.
In conclusione, un utente del browser Safari 13 molto probabilmente non sarà in grado di avviare nuove autenticazioni su un sito Web abilitato all’autenticazione di Adobe Pass che utilizza una versione precedente di AccessEnabler JavaScript SDK, v2 (versioni 2.x) o v3 (versioni 3.x). Questo problema è dovuto al fatto che tutti i cookie del servizio di autenticazione Primetime di Adobe richiesti sono bloccati da ITP, rendendo il servizio non in grado di soddisfare la richiesta di autenticazione.
La libreria AccessEnabler JavaScript SDK v4 (versioni 4.x) non utilizza cookie di terze parti per il processo di autenticazione, pertanto le sue operazioni non sono influenzate in alcun modo dalle modifiche di Safari 13.
Mitigazione
In primo luogo si consiglia vivamente migrazione ad AccessEnabler JavaScript SDK versioni 4.x per avere un comportamento stabile e prevedibile nel browser Safari.
In secondo luogo, per AccessEnabler JavaScript SDK v3 (versioni 3.x), la libreria contiene un meccanismo in grado di identificare le situazioni in cui l’autenticazione degli utenti è stata bloccata a causa di cookie richiesti mancanti. In queste situazioni la libreria attiva un callback di errore specifico (N130) che viene passato al sito Web abilitato per l'autenticazione di Adobe Pass per essere utilizzato come segnale per istruire l'utente ad eseguire azioni che possono attenuare il problema. Per beneficiare di questo meccanismo, il sito Web deve implementare la specifica Segnalazione errori.
Per AccessEnabler JavaScript SDK v2 (versioni 2.x), la libreria non offre il meccanismo descritto sopra, pertanto il sito web abilitato all’autenticazione di Adobe Pass non può essere segnalato quando istruire l’utente a intraprendere azioni per mitigare il problema.
Quando viene ricevuto il callback di errore N130 dal sito Web dell'implementatore, l'utente deve essere istruito a disabilitare Intelligent Tracking Prevention (ITP) e abilitare i cookie di terze parti:
-
In caso di Mac OS X High Sierra e versioni successive: deselezionare l'opzione "Impedisci il rilevamento intersito" per la voce "Tracciamento del sito Web" nella scheda Privacy del browser da Preferenze, come illustrato nell'immagine seguente.
-
In caso di Mac OS X Sierra e versioni precedenti: controllo di the opzione "Consenti sempre" per la voce "Cookie e dati del sito Web" nella scheda Privacy del browser da Preferenze, come illustrato nell'immagine seguente.